For W0EB's Bug "Dot Stabilizer" Page, click here.
Quick Link to W0EB/W2CTX uBITX files directory.
TSW's Older Projects, Page-2.
This project got started late last year when TSW's master programmer, Ron - W2CTX came across an article on the internet by Gareth, GI1MIC. Gareth used a small Teensy 3.2 development MPU from PJRC.com, noting the Teensy 3.2 has a reasonably decent on-board ADC (analog to digital converter)/DAC (digital to analog converter) and is fast enough, with enough memory to be able to do DSP audio processing and so had the capability of creating tunable audio filters with varying low and high skirt frequencies which gives variable bandwidth capability and also once the bandwidth is established, the filter's center frequency can be easily moved to align it to the incoming signal. Gareth's initial focus was on creating a built-in, tunable CW audio filter for his Yaesu FT-817.
The TSW crew had been working on add-on controller boards and color displays for the HF Signals uBITX transceiver and Ron-W2CTX thought a similar filter might benefit the uBITX. We put our heads together and came to the conclusion that it should first be built as a "stand-alone" filter to prove the concept and also because it's not just the uBITX that could benefit from a tunable audio filter and we didn't want to limit things to just the uBITX when we could possibly benefit many others in the process.
Originally, we used much of GI1MIC's published, open-source Teensy code and his original wiring to test the concept. Ron, W2CTX, in working with the original code and achieving some success, began refining the code to fit our own concept of what types of filtering we would most like to have. We eventually came up with 3 filter types, CW, SSB and RTTY (since changed to "DIG" for Digital) as it is versatile enough to handle most of the current digital modes being used. Ron found that he could remove almost all routines dealing with control by the FT-817 that were not really pertinent to the stand-alone concept we were working on.
Our version originally used a 1.44" TFT Color Display that did not have touch capability. We subsequently found a much better,slightly larger 1.8" TFT Color Resistive Touch Screen and attempted to use that in place of the original "non-touch" display. There were a few growing pains with the 1.8" display. At first we could not get the touch feature to work with the Teensy 3.2 and both Ron and I were beating our heads on the table trying to figure out what was happening.
We purchased the displays from www.buydisplay.com and it's their ER-TFTM018-2 with the "pin header, 4-wire SPI controller", "3.3V power" and "Resistive Touch Screen installed" Asking for help from the supplier, they said they didn't have a Teensy 3.2 to test it with so essentially we were on our own. It came down to the fact that we needed to use the same "clock" pulse to set the timing for both the display "Chip Select" and Touch "Chip Select" functions.
The Teensy 3.2 apparently has a much faster and narrower pulse output for this function. We had to parallel the two "Clocks" and if I disconnected the clock from the "Touch" controller the display would work, but not the touch. Reconnecting that clock, nothing worked. It appeared to be related to the timing of the two "Chip Select" pulses relative to the clock pulses. I finally got out my oscilloscope and while checking to see how close together both "CS" pulses were occuring, that the extra capacitance introduced by the scope probes and cables made things work. Taking an approximate guess at what value to use, I added a 47 picofarad capacitor to ground at each of the chip select pins on the display and BINGO! The display and touch now worked! I played around using different values for these capacitors, but it turns out 47 pF is just about perfect so 47 pF it is.
Once that hurdle was passed, Ron rapidly got the filters actually working and tunable. Over the next couple of weeks things got refined and a "Zero Beat" indicator was conceived. After a few more hurdles (the input to the Teensy 3.2's counter section had to be conditioned to make detecting the incoming tone reliable on lower levels of audio and limited so it wouldn't damage the Teensy's 3.3V (but 5V tolerant) digital input limits. Ron had the neat idea of making the actual indicator graphic look similar to one of the old "Magic Eye" indicators and so it starts out as a green ring and closes down to a solid green circle when the incoming tone matches the selected center frequency of the CW filter.
Finally, it was up to me (W0EB) as project coordinator and test engineer to create an accurate schematic from the working breadboard prototype. Once I had that finished, N5IB, the TSW PC layout engineer got the project and after a few emails back and forth, a viable PCB layout was agreed upon and boards ordered. Once the initial order of boards arrived I built up several to ensure that they worked correctly - I found a minor specification difference between the 74HC14 through hole part I used on the breadboard and the SMD version used on the PCB and wound up having to delete one resistor from the original design to get the 2nd stage of the zero beat audio conditioner to work reliably but other than that everything functioned as planned. The filter isn't perfect and there may or may not be digital noise while adjusting the various parameters of the filters. This is internal to the Teensy 3.2 MPU itself and try as we might, we have not been able to completely eliminate it. Once the filter is actually adjusted and you have a signal tuned in, the clicking from the Teensy's internal audio chain stops and there is very little additional noise introduced into the audio throughput by the filter.
The final stage was to actually build one into an enclosure, complete with all input/output jacks, digital encoder for adjustments, an audio output amplifier (The Teensy's output DAC doesn't have sufficient current output to drive headphones or speakers directly) and the 1.8" touch screen display. When I cut the window in the enclosure to mount the display, there were, as usual a few minor imperfections so N5IB came up with a nifty way to make bezels for this display. He just laid out a PCB and we had a few made. They turned out looking pretty nice so I think we'll Keep the idea. One of the chosen bezel designs is shown in all the pictures of the finished filter shown on this page.
The PC board construction uses 0805 sized SMD resistors and capacitors throughout as well as an SOIC-14 sized 74HC14 HEX inverter with Schmitt Trigger inputs. Actually, only two of the inverters are used in this application but the available parts are cheap enough that it was selected anyway due to it's specifications meeting all the circuit parameters for the Zero Beat signal input conditioner. The Teensy 3.2 MPU is socketed for ease of replacement should that ever be necessary. The 7805 regulator is shown without a heat sink. Originally one was specified but after extensive testing, I find that the 7805 runs only slightly warm without the heat sink so the requirement for it has been deleted from the final design.
This "Stand-Alone" DSP Audio Filter is being offered in partial kit form. The partial kit consists of the PC Board and ALL parts except the Teensy 3.2 MPU, ER-TFTM018-2 1.8" Color TFT Resistive Touch display, mounting hardware and a case to install things in. We include the controls, audio amplifier module and even the knobs for the controls. Oh, and we include a bezel for the display as well. The only parts you have to get yourself are the Teensy 3.2, display, a case and whatever hardware you wind up needing to mount the main board, amplifier and display in the case you pick.
Kits are now available for order and pricing is as follows: Domestic US price for the kit as described is $35 which includes first class small package shipping withing the US & it's posessions.
International pricing is USD $50 which includes First Class (small package) shipping but excludes any VAT and/or Customs duties that the destination country may charge.
To check on availability and ordering instructions, contact Jim, W0EB through the link below.
Contact Jim, W0EB.
Contact Ron, W2CTX.