I am working on a board that can take the output of an SDR (or VCO) and provide high accuracy amplitude control (+- 0.5dB). This is an opensource project that I will hopefully launch on crowdsupply when its done :D. The final project will allow you to take a device like the LimeSDR and turn it into a precision RF generator. This will give you PC based RF signal generator with all kinds of modulation functions.

The device will have a USB interface and a python library to control the device. The MCU on the device will be some generic ARM device with a good enough ADC to meet the requirements for the peak detector.

I am looking at different topologies and methods for doing this that fit some of the requirements below. I am flexible with the requirements because I want to see what people are interested in.

  • 1Mhz to 3Ghz (limited by my test equipment)
  • 15 to -75 dBm (this could be extended but would require very good isolation)
  • relativity inexpensive

Below is the current design that I am exploring.

Typically peak detectors have a range of about 30dB. The idea is that the generated signals amplitude is unknown. The peak detector is used to sample the amplitude and control the DSAs based on the requested amplitude. The device is USB based which allows simple calibration of the peak detectors (and the DSAs if required).

My concern with this design is the performance of the peak detector against different the different harmonics generate by different SDRs. If a selectable band-pass system is needed it will complicate the design but I feel this may be necessary for the peak detector and the LNA.

Any feedback would be great!

  • \$\begingroup\$ youtube.com/watch?v=8RAK9248-Lo \$\endgroup\$ – Tony Stewart EE75 Jan 7 '19 at 19:16
  • \$\begingroup\$ That's a very cool chip. If I was designing and SDR from scratch and wanted the signal gen features I would probably roll with this IC. However for this design I am not trying to build and SDR, but only an attachment to allow precision amplitude control for SDRs. \$\endgroup\$ – Meozaa Jan 7 '19 at 19:43
  • 1
    \$\begingroup\$ Then you must define all the s parameters over 3 freq. decades \$\endgroup\$ – Tony Stewart EE75 Jan 7 '19 at 19:45
  • \$\begingroup\$ I do not have access to a VNA right now. Only a spectrum analyzer with TG. Will I still be able to test this correctly without a VNA? \$\endgroup\$ – Meozaa Jan 7 '19 at 19:57
  • \$\begingroup\$ perhaps with a splitter ( DC-3 ) \$\endgroup\$ – Tony Stewart EE75 Jan 7 '19 at 19:58

I'd split your project in two parts:

  1. the power metering part
  2. the adjustable attenuation part

If you want to correct how much power you're actually producing, there's no way to know but measuring. So, you're on-spot with the split-and-measure approach you're taking here.

There's interesting power meter ICs that you can buy that are pretty impressive in specs, so maybe that'll be a good way to go if your own measurement equipment is limited. Analog Devices is the main supplier of these.

Your fine-adjustment hardware, however, ignores one key fact: you're using software defined radio. Rather than using hard-to-calibrate analog attenuators after your power metering, where you can't tell whether they behave correctly, just use the power of SDR!

Just scale the digital numbers you send to your SDR frontend. Depending on the application, the baseband signal processing is often even done in floating point arithmetics, making such adjustments a breeze and low-noise to implement.

You then would've built a TX-side AGC, if you logically connect the measurement to your amplitude scaler. That saves you all the analog attenuation troubles.

  • \$\begingroup\$ My current concern is with the power metering. The attenuation is not to much trouble. All of the peak detectors that I have worked with have different responses depending on the second harmonic. Doing the fine adjustment on the SDR is a good idea. However I still need an PA and attenuation to get good dynamic range of the device. I want to be able to keep up with RF signal generators. Most of them have a range of -127dBm to +15dBm. I dont need to cover this whole range but -75dBm would be a good lowest level. \$\endgroup\$ – Meozaa Jan 18 '19 at 17:36
  • \$\begingroup\$ Especially if you have a large dynamic range on the output of whatever you build, you want to measure on the output to the adjusting chain, not on the input. A dynamic range of 90dB sounds like something a reasonable SDR can do if you simply add a by-passable 30dB of output amplification. Again, fine control would simply happen in software scaling, and you don't need pre-calibrated hardware if you can measure at the end of the signal chain instead somewhere in the middle. \$\endgroup\$ – Marcus Müller Jan 18 '19 at 18:43
  • \$\begingroup\$ I have a LimeSDR I can use to test this out. I will put a prototype together and then put my results as an edit above. I will also need to pick a good LNA for this project. \$\endgroup\$ – Meozaa Jan 20 '19 at 12:51
  • \$\begingroup\$ hm, be sure that you need this at all. Remember, the LimeSDR has adjustable TX amplification itself, and it you can without significant quantization noise get quite a range in the digital domain, especially if you're oversampling. Maybe you don't need any additional analog gain variability to achieve the range you want! \$\endgroup\$ – Marcus Müller Jan 21 '19 at 12:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.