External Lowpass Filter for UniTrunker design thread

Status
Not open for further replies.

jcardani

Member
Joined
Jan 16, 2002
Messages
1,351
Location
Orlando, FL & Ocean City, NJ
Hi All,

To provide LTR, Passport, and Multi-Net support to Unitrunker this thread was created to design an external low pass filter.

In another thread, Unitrunker suggested that an external low pass filter may be developed that connects between the discriminator audio and the sound card input. The sound card's left channel would input unfiltered discriminator audio and the right channel low pass filtered audio.

This would not only allow adding the 3 protocols to Unitrunker, but having the filtered data would be helpful with reading the low speed data on Motorola and EDACS voice channels and would allow for a more efficent way to leave the voice channel more quickly.

The low pass filter can be created by using op amps or by using a filter IC chip such as:
http://www.linear.com/pc/downloadDocument.do?navId=H0,C1,C1154,C1008,C1148,P1356,D3153

Again this would be a filter design only (not a filtered data slicer). We would need to agree on what the proper cutoff freq be, type of filter (butterworth, bessel, etc), and other details.

What do you tech guys think about this?

thanks,
 

jcardani

Member
Joined
Jan 16, 2002
Messages
1,351
Location
Orlando, FL & Ocean City, NJ
Here are some ideas for a circuit using an opamp filter. It's based on Eric C's LTR data dicer design. The MC33174 can be powered by either 2 - 9V batteries or + and - voltage regulators instead of the serial port.

Please let me know if this will work - plus there are versions with and without R1 and R2.

thanks,
 
Last edited:

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
One suggestion - instead of passing discriminator audio straight through, use the output of the buffer amp for unfiltered audio.

The real hassle is getting power. I'm done with throwing dead 9 volt batteries into the local landfill. I can steal 5 or 12 volts from a spare disk power connector. On a laptop, I can steal 5 volts from USB. If I mount this internal to a radio (my personal favorite), I can usually find 5, 9 or 12 volts somewhere.

Finding bipolar power is rare so either I use an inverter to create the negative rail or use a cicuit that operates from a single positive rail.
 

jcardani

Member
Joined
Jan 16, 2002
Messages
1,351
Location
Orlando, FL & Ocean City, NJ
Hi Unitrunker,

I'll make the update to the circuit you suggested and add a regulated power supply with inverter chip. I would rather use a proven circuit using the +/- voltage than single supply.

Any idea about whether I should include the R1 and R2 resitors up front or not?

thanks,
 

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
I'm just thinking out loud here.

I like the Maxim chips (some caps and a pair of bobbin cores) to get +/- 12 volts from +5 volts. However, I haven't kept up; there may be better chips out there.

I suggest leaving R1/R2 in place with optional jumper to short R1.
 

gary123

Member
Joined
Sep 11, 2002
Messages
1,258
Instead of using a split powersupply I would run the opamp (LM-741) off 9vdc or 5vdc decouple the input with a pass capacitor and use a pair of equal value resistors to create the 1/2 vcc needed.
 

pro92b

Member
Joined
Jun 27, 2002
Messages
1,720
Slicerwizard wrote a program called LTRanalyzer that takes unfiltered signals from a discriminator tap and decodes LTR quite reliably. I have used the program and found that voice frequencies 300Hz - 3000Hz do not disturb the decoding. The program must have software filtering or some other processing to achieve this. The CPU usage is low and the program itself is quite small and resource light. Maybe whatever he is doing in LTRanalyzer would be applicable here if he is willing to share.

Regarding the hardware filtering approach, the subaudible data is a bit below 300 bps, 297.62 bps according to my reference. The maximum data frequency of 150 Hz occurs for a string of alternating 0's and 1's. This should be the filter cutoff frequency, not 300 Hz. Lower voice frequencies would be attenuated very little with a 300 Hz filter and would be expected to interfere with decoding. I have hardware using a 150 Hz cutoff and it works very well for LTR, Passport, and MultiNet.

The filter should run off a single 5 volt supply for ease of usage (USB powered). A rail to rail op amp like the TI OPA4340 should be suitable.

The filter ideally should be linear phase with sharp sutoff frequency. Conventionally this would require a high order Bessell filter with its attendant complexity and critical component tolerances. There are filters that approximate linear phase and provide sharp cutoff with only four poles. A circuit attributed to EF Johnson and published here in a Wiki on data slicers is one example of this approach. I use a variant of this circuit myself and it works very well.

If a hardware filter ends up being the method chosen, the simpler it can be made, the more likely forum members will build it. Judging from the struggles people have just tapping a discriminator, the widest use of a filter might be if someone offers an assembled kit or hosts a group buy for the assembled kit.
 

jcardani

Member
Joined
Jan 16, 2002
Messages
1,351
Location
Orlando, FL & Ocean City, NJ
I'm just thinking out loud here.

I like the Maxim chips (some caps and a pair of bobbin cores) to get +/- 12 volts from +5 volts. However, I haven't kept up; there may be better chips out there.

I suggest leaving R1/R2 in place with optional jumper to short R1.
I'll also make these changes and post the updated schematic. I'll include the voltage inverter chip.

thanks!
 

jcardani

Member
Joined
Jan 16, 2002
Messages
1,351
Location
Orlando, FL & Ocean City, NJ
Slicerwizard wrote a program called LTRanalyzer that takes unfiltered signals from a discriminator tap and decodes LTR quite reliably. I have used the program and found that voice frequencies 300Hz - 3000Hz do not disturb the decoding. The program must have software filtering or some other processing to achieve this. The CPU usage is low and the program itself is quite small and resource light. Maybe whatever he is doing in LTRanalyzer would be applicable here if he is willing to share.

Regarding the hardware filtering approach, the subaudible data is a bit below 300 bps, 297.62 bps according to my reference. The maximum data frequency of 150 Hz occurs for a string of alternating 0's and 1's. This should be the filter cutoff frequency, not 300 Hz. Lower voice frequencies would be attenuated very little with a 300 Hz filter and would be expected to interfere with decoding. I have hardware using a 150 Hz cutoff and it works very well for LTR, Passport, and MultiNet.

The filter should run off a single 5 volt supply for ease of usage (USB powered). A rail to rail op amp like the TI OPA4340 should be suitable.

The filter ideally should be linear phase with sharp sutoff frequency. Conventionally this would require a high order Bessell filter with its attendant complexity and critical component tolerances. There are filters that approximate linear phase and provide sharp cutoff with only four poles. A circuit attributed to EF Johnson and published here in a Wiki on data slicers is one example of this approach. I use a variant of this circuit myself and it works very well.

If a hardware filter ends up being the method chosen, the simpler it can be made, the more likely forum members will build it. Judging from the struggles people have just tapping a discriminator, the widest use of a filter might be if someone offers an assembled kit or hosts a group buy for the assembled kit.
Hi Pro92,

I also remember another software a fellow in either New Zealand or Australia developed it. I think Opus was his name? Of course software filtering would be the best approach.

If we go with an external filter, I'm all for a better design! I was just trying to use something that was already proven to work. Would you be able to design the bessell filter schematic with the 150 cutoff freq and the OPA4340 opamps? I don't have filter design experience.

Edit: the OPA4340's are not in stock at Digikey. Is there a substitute part for this?

Thanks!
 
Last edited:

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
Slicerwizard wrote a program called LTRanalyzer that takes unfiltered signals from a discriminator tap and decodes LTR quite reliably. I have used the program and found that voice frequencies 300Hz - 3000Hz do not disturb the decoding. The program must have software filtering or some other processing to achieve this. The CPU usage is low and the program itself is quite small and resource light. Maybe whatever he is doing in LTRanalyzer would be applicable here if he is willing to share.
Andrew has the luxury of using a relatively low sample rate. The number of FIR taps is roughly the sample rate divided by the symbol rate. To allow simultaneous recognition of all available protocols, I have to use a higher sample rate. Decoding 9600 baud EDACS from 11,050 samples per second won't work.

Compare 11050 samples per second divided by 300 symbols per second vs. 48k or 96k samples per second divided by the same 300 symbols per second. Even at 44,100 - I have to burn four times as many multiply accumulate operations. That quickly gets expensive - particularly for fanatics like me that want to simultaneously decode multiple sources at once.

I might be able to come up with a hybrid / cascaded approach that feeds the original stream - downsampled - into an effective filter with a smaller number of FIR coefficients. That's R&D time I don't have right now.

Regarding the hardware filtering approach, the subaudible data is a bit below 300 bps, 297.62 bps according to my reference. The maximum data frequency of 150 Hz occurs for a string of alternating 0's and 1's. This should be the filter cutoff frequency, not 300 Hz. Lower voice frequencies would be attenuated very little with a 300 Hz filter and would be expected to interfere with decoding. I have hardware using a 150 Hz cutoff and it works very well for LTR, Passport, and MultiNet.
These filters assume a sinusoid waveform. I'm just speculating here but I suspect Eric wants sharper square waves from the recovered LTR data. The lower cutoff will round those corners. This might make a difference under crappy decoding conditions.

The filter should run off a single 5 volt supply for ease of usage (USB powered). A rail to rail op amp like the TI OPA4340 should be suitable.
I'll take two. :)

If a hardware filter ends up being the method chosen, the simpler it can be made, the more likely forum members will build it. Judging from the struggles people have just tapping a discriminator, the widest use of a filter might be if someone offers an assembled kit or hosts a group buy for the assembled kit.
Low pass filter aside, just having a buffer amp between the discriminator tap and the sound input should do wonders for folks decoding more complex signals like P25.

Decoding MPT1327 from discriminator audio benefits from a high-pass filter for those systems that include a subaudible tone with the FFSK signal. The alternative is to use speaker audio. It works but is inconvenient for users switching back and forth between disc. and speaker audio.
 

jcardani

Member
Joined
Jan 16, 2002
Messages
1,351
Location
Orlando, FL & Ocean City, NJ
Hi Unitrunker,

Sorry, it's late and I'm a bit tired. Where should I put the jumper again?

Edit - I think i got it now, see above. Please let me know if the schematic is correct.


BTW I used the ICL7660 in a few circuits and they work great!

thanks,
 
Last edited:

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
Edit - I think I got it now, see above. Please let me know if the schematic is correct.
Yep. That's it.


BTW I used the ICL7660 in a few circuits and they work great!
Just saw the datasheet. I want to get some samples of MC33172, MC33174 and ICL7660. I'd like to pair a '172 with the '7660 to operate as a stereo buffer amp. A cheesy way to drop +12 volts without inserting a regulator is to use two or three diodes in series. Should get down to 10 volts.

I also want to build the full schematic above.

The ICL7660 will do +5 to -5 as well as +9 to -9 volts and MC33174 will operate at +/- 5 volts so this will work for USB power too (minus the LDO regulator).
 
Last edited:

ronenp

Member
Joined
May 8, 2002
Messages
515
I dont understand one thing
Cant the software do the Filtering
If Power SDR software can do more complex thing
Or DPL decoder can do Filtering why doing it with external Hardware ?
Thanks Forward
Ronen - 4Z4ZQ
Ronen Pinchooks (4Z4ZQ) WebSite
 

pro92b

Member
Joined
Jun 27, 2002
Messages
1,720
Two OPA2340 op amps can substitute for the OPA4340.

At 300 bps the highest fundamental frequency is 150 Hz. A 150 Hz square wave consists of the fundamental plus an infinite series of odd order harmonics of declining amplitude. The first such harmonic is the third, at 450 Hz. This will be attenuated regardless whether the filter cuts off at 150 or 300. I don't believe the pulse shape is significantly better with a 300 Hz cutoff nor is it critical in practice. The 150 Hz cutoff is used by EF Johnson in their circuit with good results as I mentioned.

The struggles with a universal program with simultaneous multiple decoding are understood. The question is - do you really need to simultaneously decode the subaudible data controlled systems together with P25, EDACS, etc? Can't there be a user input defining that subaudible is the chosen mode for the session? Would that allow software filtering to be more easily accomplished?
 

jcardani

Member
Joined
Jan 16, 2002
Messages
1,351
Location
Orlando, FL & Ocean City, NJ
Yep. That's it.


Just saw the datasheet. I want to get some samples of MC33172, MC33174 and ICL7660. I'd like to pair a '172 with the '7660 to operate as a stereo buffer amp. A cheesy way to drop +12 volts without inserting a regulator is to use two or three diodes in series. Should get down to 10 volts.

I also want to build the full schematic above.

The ICL7660 will do +5 to -5 as well as +9 to -9 volts and MC33174 will operate at +/- 5 volts so this will work for USB power too (minus the LDO regulator).
Hi Unitrunker,

Please keep me posted on how the circuit is progressing and if an alternate USB 5V powered version would work also.

What is your timeframe with the circuit build and software changes? Also, please PM me - I have code for LTR, Passport, and Multi-Net that works well. For Passport I have both normal and inverted versions. Ex. the NJ Transportation Authority (NJ Turnpike and Garden State Parkway Ops) uses inverted data.

Also let me know if you need me to beta test from here. There are many LTR, Passport, and one Multi-Net system in the area.

Finally, not sure if you saw my question in the other thread, but what's your thoughts on a single radio option for Unitrunker?

thanks,
 

jcardani

Member
Joined
Jan 16, 2002
Messages
1,351
Location
Orlando, FL & Ocean City, NJ
Two OPA2340 op amps can substitute for the OPA4340.

At 300 bps the highest fundamental frequency is 150 Hz. A 150 Hz square wave consists of the fundamental plus an infinite series of odd order harmonics of declining amplitude. The first such harmonic is the third, at 450 Hz. This will be attenuated regardless whether the filter cuts off at 150 or 300. I don't believe the pulse shape is significantly better with a 300 Hz cutoff nor is it critical in practice. The 150 Hz cutoff is used by EF Johnson in their circuit with good results as I mentioned.

The struggles with a universal program with simultaneous multiple decoding are understood. The question is - do you really need to simultaneously decode the subaudible data controlled systems together with P25, EDACS, etc? Can't there be a user input defining that subaudible is the chosen mode for the session? Would that allow software filtering to be more easily accomplished?
Hi Pro92B,

Maybe we can build 2 versions of the circuit, The orginal 300 Hz cutoff and a new 150 Hz one using the same OPamps and see which one works best. Can you or someone calculate the new values of the R's and C's needed - I don't have filter software.

thanks,
 

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
Cant the software do the Filtering
See my reply in post 11. The number of FIR taps refers to the number of multiply-accumulate operations per sample. I don't like releasing programs that consume 50 percent or more CPU.
 
Last edited:

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
The struggles with a universal program with simultaneous multiple decoding are understood. The question is - do you really need to simultaneously decode the subaudible data controlled systems together with P25, EDACS, etc?
That's the magic of the program. You give it a signal and it tells you what it found. You don't need to guess signal polarity or distinguish EDACs wide from narrow. It just works.

You and I can tell the difference between an idle burst on an LTR home channel from the chuff of a Mobitex channel. Not everyone knows this; they don't need to.

Can't there be a user input defining that subaudible is the chosen mode for the session? Would that allow software filtering to be more easily accomplished?
The individual decoders can be disabled. The plumbing is there.
 
Last edited:
Status
Not open for further replies.
Top