222MHz transverter built around an ESP-504

Thu Feb 7 16:44:49 CST 2008

A couple years ago I built a pair of transverters for 222MHz. One of which I kept, the other I sold on eBay.

I would like to use it separate from the FT817 and ideally on 10M instead of 12M.

I do have a RS HTX-??? 10m radio which should be fine for this purpose, but what I have is a working unit and I don't want to go mucking around significantly changing a working unit for no good reason. update: I picked up a DEMI 222 transverter and modifed the HTX-10!

I'd also like a little more power out. I have a M67712 25W module for 222MHz. Designing this into an amp would make my configuration three boxes with even more wiring and some control circuitry. Can I do better?

I did find some guy on eBay selling a SEA ESP-504 commercial ACSSB radio that operates in the 1.25M band. It won't directly do SSB as I want with a VFO on 1.25M, but the major parts are there. There's a nice set of helical resonators, preamps, shielding, etc. I'd like to mate this more or less permanently to the RS HTX-??? 10m radio for use on 2M to get 25W out.

I'm planning on using W1GHZ's 222 transverter board again with a little bit of modification to the design of that and some to the ESP-504.

This design uses the third harmonic of a cheap 66MHz computer crystal to get an IF of 198MHz to feed into a mixer. If I want to use a 10M radio, I need an IF of 194MHz to feed into a mixer. If I'm going to use the same tripler circuit, I need a 64.66666MHz crystal. Good luck finding one of those from either DigiKey or without spending quite a few dollars from a crystal manufacturer.

However, what I did find was a programmable MEMS-based oscillator and I have a couple of samples that are programmed for -- you guessed it -- 64.6666MHz. Bingo. They're SMT and run on +3.3v, so I need to do a little bit of work on a support circuit for these guys.

Oscillator completed with ugly SMD construction -- but it works!

Fri Jan 9 21:31:36 CST 2009

I've now spent a lot of time looking at the block diagrams and schematics for this radio. It strikes me that there's too much very nice hardware in there to just use the final amplifier and maybe the helical resonators. What I'd like to do is remove the personality board and replace it with the minimal amount of electronics necessary to program the PLL, control power and do some audio amplification. And maybe an LCD display to say what frequency I'm on.

But I'd like to program the radio first. The tx/rx lines are at ttl level on the mic connector, and the vendor has the necessary software available for download on their website but apparently you need a unit that's a bit more than a level shifter (a.k.a. the PIU500) to do the programming.

I don't know that the MC145588 PLL will allow better than 1kHz resolution for tuning, but the VCTCXO might have enough adjustability in it to make that not an issue?

Sun Jan 11 00:27:18 CST 2009

I spent a good deal of time with the radio and the frequency counter and the spectrum analyzer this evening. Found the radio's TX frequencies and now know what ACSSB sounds like. It's indecipherable if your other radio is just SSB.

But I can't leave well enough alone. I just finished unsoldering the MC145554 PCM Codec-filter chip on the personality board. (A lobotomy of sorts?) And I jumpered pin 15 to pin 3. The input to the output. With the radio in test mode, I can now transmit and receive a standard SSB signal. Sounds like crap, but it's SSB and definitely not ACSSB . I don't know if sounds-like-crap is because the '504 and my test radio are within inches on the bench or what. I had originally tried with the codec in, but pin 3 lifted -- made no difference if it's in or out, so for the time being, its out.

Next, ideally, is to wire up something to reprogram the PLL to a frequency that I want. I should separate the radios first though and spend some time probing testpoints and looking over the schematics again to see if I can determine where the noise is coming from.

As far as programming the PLL -- maybe some weekend I can find time to isolate the pins that go to the PLL, attach to my test PC's parallel port and use something like Freescale's SPIGen software to send the bitstream necessary to program the PLL registers. Once I can either succeed or fail there, I'll move onto programming an AVR.

Thu Feb 26 22:42:27 CST 2009

A little more progress without moving forward. What I had done was to remove the J4 connector on the personality board, install a 7-pin header and wire- wrap connect all but the data, clock and ENB. I programmed an ATTINY2313 AVR with some code to program the PLL to a desired frequency. I decided I didn't want to screw around with the parallel port.

What I neglected to realize is that the main and data lines drive more than just the PLL. Main and data connect to a boatload of things that need to continue to run. So, I took out the wire-wrap crap and lifted the three leads on the MC145588 from the PC board, soldered on three extension lines and I'll take those directly to my AVR...tomorrow.

Sun Mar 1 10:16:40 CST 2009

Last night I think I finally did it -- I successfully reprogrammed the PLL on the ESP504 to transmit and receive on 222.100 MHz.

I used an Atmel ATTINY2313 with a simple bit-banging routine to reprogram the PLL. In the end I ended up just lifting the pins on the PLL and soldering lines directly to them to connect with the AVR, as the clock and data lines from the personality board drive other devices in the radio as well.

The VCO seems to be OK at this frequency at a little over 4 volts. Couple things are next.

  • make a hand mic for this radio
  • test that I'm on frequency
  • maybe retune the helical filters up a bit, or at least check them out
  • add a 2x16 display to indicate the current frequency
  • use the existing channel selector switch to move the frequency up/down
  • s-meter
  • do "something" about the minimum 5kHz step for the PLL
      I know I can reduce the R register values some at the cost of increasing the N register, but this only goes so far. An R value of 2898 gives a minimum step of 3.5kHz which is better than 5, I guess. Maybe I can change the prescaler to divide by 128 instead of 64?

Oh yeah. Picked up another ESP504 on ebay for cheap. It was advertised as a "CB RADIO", that it included a power cord and was tested. Long story short, the only true thing was the ESP504 part. It didn't come with a power cord (no surprise) and sure wasn't tested, as when I received the radio, the reverse polartiy protection diode was a dead short. Tested to the point of destruction? Well, at least I got what I wanted and it seems to work as designed after my repair.

Mon Mar 2 12:33:08 CST 2009

Hand microphone done and I'm on frequency.

Spent some time with the counter and spectrum analyzer. The AVR is successfully programming the PLL, and the unit is definitely going to my intended frequency. However in test mode, it's AM output only. There's no attempt to remove the carrier or other sidebands. Damn.

I think what I need to do is leave it in "normal" mode, set to do talkaround. Then hardwire the squelch open. And reprogram the PLL. And hope that the CPU doesn't get cranky when the DSP doesn't provide useful data.

Mon Jan 31 09:52:05 CST 2011

Picked up the programming aspect again this weekend. Wish I could find specs on the SCC 10.275 "10M3.8E" filter, guess I'll have to pull it and sweep it or something like that.

Sun Feb 6 14:16:56 CST 2011

SUCCESS! What I've not mentioned is that I've pulled the main cpu and replaced it with a ribbon cable to various pins on an Arduino. This has been a project for a while, but just had a few hours to devote to it. There were a few minor hitches, but I can now read the status of the front buttons. Might not seem like much but if I can read THOSE, that means my design is working correctly, I understand how to talk to various parts of the radio and I should be able to move things forward now.

Sun Feb 13 22:54:33 CST 2011

Even more success -- PLL programmed to 232.3755 -- high enough for the 10.275 LO on the first mixer to provide 222.100 transmit and receive. Something like that. Considering I'm working on this late at night (that is I should be sleeping, not thinking) I managed to solve an issue with de-asserting the lines for the PLL which caused it to un-lock on me after initialization.

Also realized that I have yet one more latch to control before receive can happen -- some CD4053 switches around common pieces for audio-level transmit and receive DSP circuits. I've jumpered over the codec, but audio still needs to transit that wire.


Tue Feb 15 23:04:22 CST 2011

Found one more latch (that CD4053) that needed to be programmed before it would receive. Programmed the Arduino, hit the front panel button that I programmed to toggle the squelch and immediately heard the familiar hiss of an empty SSB frequency. Dug out my FT-817 and 222 transverter, set it up and called myself on 222.100 MHz. With a little bit of tuning (my transverter is not super accurate frequency-wise, especially on power-up) there I was, clear as Donald Duck!

I am a bit confused as to why it's actually receiving in USB. Everything I read indicated it was LSB. Oh well, don't care, it's great news for me. Saves me a lot of work!

In short: the $25 ebay-sourced commercial 220MHz radio is now successfully under my control and receiving USB at 222.100MHz by jumpering over one chip, and removing the original CPU, replacing it with my own.

I'll have it transmitting by this weekend.

Sat Feb 19 23:34:04 CST 2011

Next step, transmit. I wrote enough code so that when you hit the PTT button, the radio went into transmit mode and made RF. That was easy.

Unfortunately it sounded like crap. I think the key is to be able to set the values in the 6-bit DAC which controls interesting things like AGC, RF power level, some phasing control and VCTXO tuning. I know the outgoing RF need not sound like crap, the other ESP504 with the AVR and the lifted pins on the PLL (original cpu) sounds OK on transmit.

The frustrating thing is that I need to feed four 6-bit values to the MC144111 using 3 8-bit ints. That's just some simple binary math, but its 20 minutes before midnight and the brain shuts down around 10 p.m. or so. (I figured this out mercifully early as a student at the university -- work for hours late at night on an assignment and get nowhere. Wake up at 6 and finish in 30 minutes.)

So I guess I'll work on this tomorrow.

It's inevitable, I need to be able to do this for the PLL as well, there I need to not only do wacky-ass PLL math but feed in separate 14, 10 and 7-bit values using properly bit-aligned 8-bit ints.

Mon Feb 21 23:16:27 CST 2011

Well, I can set the DAC values, but unreliably. Need to re-check my code. The feedback phase control seems to be important, I think I need to put the original CPU back in the radio and measure the values prior to my modification. When transmitting and stepping the feedback phase control the audio frequency of the carrier does change -- as the values increase, it goes down. But it's pulling around 8A on TX which is a little high for a 25W radio I think.

Well, progress.

Sun May 1 15:28:08 CDT 2011

Something different:

May 2/3/4 2011

Minor progress in code cleanup -- now that I've written enough code it's become apparent where I'm doing a bunch of stuff over and over (U4 latch addressing mostly) explicitly, so I've written some functions to deal clean this up. Still having some issues with when to write and when to set but that's likely because I'm starting to think about this after 10 p.m. when I'm already a little burned out and ready for bed.

Wed Oct 3 23:39:35 CDT 2012

Holy shit, has it been over a year?

Acquired a Saleae Logic 8-channel logic analyzer off ebay for cheap. Had about an hour to resurrect this project and ensure that the Saleae worked.

Took me a few minutes to find the radio...

But wow! It was very simple to connect the analyzer to the radio and get going. I can now see actual timing of what's going on with the original CPU and hopefully that will give me some real insight as to what I need to do differently.

This page last modified Wed Oct 3 23:39:38 CDT 2012 by timc!

back to where you probably came from