| Electronics > Projects, Designs, and Technical Stuff |
| Using ESP32 and Neo-7N for precise frequency measurement |
| << < (3/11) > >> |
| edigi:
--- Quote from: mino-fm on September 12, 2018, 08:11:38 am ---For precision frequency measurement you don't need a GPSDO. An 1 pps signal is sufficient for 7 – 8 digits/s. --- End quote --- Yes, that was the idea in my first post. I have no doubt now that it can work and I can hardly wait the GPS module that I've bought to arrive. For the frequency measurement no DDS is needed but it's good to have some kind of prescaler (like MC12080 used in the linked description or the Fuji MB506 that I use) but those are so cheap (1 USD per part) that doesn't even worth mentioning. As no answer arrived at that point to my question I've started to look around and found that for what most people use the GPS module is to build a GPSDO but I started wondering why most people seem to use special PLL instead of the simpler DDS (ready made cheap boards available), since the DDS is more flexible that is if you need 10 MHz (that most measuring devices use) you can set that or if you need 25 MHz you can set that or basically any value (which can have also its own good use e.g. ADF4351 VCO can be stepped only with FREF/4096 step, however if one can change the FREF in very fine steps that limitation is also very easy to overcome...). |
| mino-fm:
--- Quote from: edigi on September 12, 2018, 01:58:25 pm --- --- Quote from: mino-fm on September 12, 2018, 08:11:38 am ---For precision frequency measurement you don't need a GPSDO. An 1 pps signal is sufficient for 7 – 8 digits/s. --- End quote --- Yes, that was the idea in my first post. --- End quote --- Please tell us which resolution do you expect (digits/s) and about your desired input frequency range. You should use reciprocal counting in any way. Don't thing about gatetimes of 1 s or something like that. I don't know anything about ESP32 but if you are familiar with this chip, you should know more about its internal timers and capture units. This could solve your problem with little extra hardware like D-FF, inverter and GHz prescaler as desired. |
| ogden:
--- Quote from: edigi on September 12, 2018, 01:58:25 pm ---I started wondering why most people seem to use special PLL instead of the simpler DDS (ready made cheap boards available) --- End quote --- Most likely just because VCO approach of building GPSDO is more mature/popular and usually lower cost as well. --- Quote ---ADF4351 VCO can be stepped only with FREF/4096 step, however if one can change the FREF in very fine steps that limitation is also very easy to overcome... --- End quote --- Don't. Fractional-N or Integer-N synthesizer is worst thing you can use to build reference oscillator. Compare phase noise specs of ANY synthesizer to what you can get with DDS and you will see why. http://www.analog.com/en/analog-dialogue/articles/dds-vs-analog-pll.html Because of the frequency division, C-DDS-based solutions have a clear advantage over analog PLL synthesizers in output phase-noise. The output phase noise of a C-DDS synthesizer is actually better than that of its reference clock source, while analog PLL-based synthesizers have the disadvantage of actually multiplying the phase noise present in their frequency reference. |
| edigi:
--- Quote from: mino-fm on September 12, 2018, 03:24:17 pm --- --- Quote from: edigi on September 12, 2018, 01:58:25 pm --- --- Quote from: mino-fm on September 12, 2018, 08:11:38 am ---For precision frequency measurement you don't need a GPSDO. An 1 pps signal is sufficient for 7 – 8 digits/s. --- End quote --- Yes, that was the idea in my first post. --- End quote --- Please tell us which resolution do you expect (digits/s) and about your desired input frequency range. You should use reciprocal counting in any way. Don't thing about gatetimes of 1 s or something like that. I don't know anything about ESP32 but if you are familiar with this chip, you should know more about its internal timers and capture units. This could solve your problem with little extra hardware like D-FF, inverter and GHz prescaler as desired. --- End quote --- Expected digits are in the above mentioned 7-8 range, that translates to 10-100 million counts needed per measurement. As apart from references I'm mostly interested in the RF range so the 1s gating is more than perfect, but as all of this SW based, if my need changes I can easily adjust. ESP32 is nothing special, there are quite many different micro controllers that one can buy cheap (ATmega, STM32) but ESP32 is probably newer/more powerful and most devkits with WiFi and BT support (that I don't use in this case). It has 8 independent counting channels, that can be separately gated (from internal remote controller logic) or externally (pins as you wish, so it's just SW which is the gating and which is the counting input). There are several examples (just google github ESP32 frequency counter) but almost all, if not all are broken as the authors nicely forget about that the HW can automatically continue from upper limit after zeroing and generate an interrupt at the same time so count length as you wish, but it's easy to fix (also it can count on both edges so e.g. 25 MHz generates 50 million counts; tested with 25MHz TCXO. Note: multi channel high frequency measurement can have issues due to the massive amount of interrupts generated but I've never tried this as this is way beyond my needs). The logic interface is super fast, once I've tried it with a 100 MHz TCXO, it measured it as 20 MHz, if you're familiar with sampling you know why but my point is that it had no trouble with the 100 MHz signal... I also have a ready made 8GHz 1000:1 ratio prescaler (input side is either HMC434 or some PLL that has pins for both divider input and output; never bothered to check) but I don't particularly like these high ratio dividers as precision is lost unless one is willing to wait quite long for the measurement (so they are really good only for the high frequency side). |
| ogden:
--- Quote from: edigi on September 13, 2018, 11:50:54 am ---Note: multi channel high frequency measurement can have issues due to the massive amount of interrupts generated --- End quote --- Not true. 32 bit counter overflows at 2^32 = 4.3 billion counts. This means that gating (timer capture) interrupts will be more frequent than timer overflow interrupts. If you are using 16 bit counter for frequency measurement application, you are simply not using right parts. Other possibility: you are building your frequency counter wrong way. |
| Navigation |
| Message Index |
| Next page |
| Previous page |