¿ªÔÆÌåÓý

ctrl + shift + ? for shortcuts
© 2025 Groups.io

Re: Frequency calibration of the tinySA against a GPS reference clock #tinysa

 

Hi there,
???? I made a frequency reference using a NEO-7M controlled by a NANO. It was esssentially the design by Louis Skully, and members might find it useful to refer to .
??? I did make some small modifications to both hardware and software to suit my requirements. In particular I used the usual Philips interface circuit to provide the 5V/3.3V interface (the module needs 3.3 volt logic).
??? I also changed the software to have the NEO-7M output 1Hz when not locked. A front panel LED then flashes at that rate as a warning. When locked presumably flashes at the output frequency, but my eyes can't quite see that!
??? I doubt the reported 30MHz output but I don't have the data to hand.? Mine goes up to 12 MHz.
??? It is worth noting that the module only produces a "nice" output at divisions of it's internal reference (48MHz). At any other The output is erratic. A frequency counter (which only counts edges) will show the correct frequency (e.g 10MHz) but a spectrum analyser will show the truth, and an oscilloscope will exhibit multiply triggering.
???? So, depending upon how you use it the results might not be quite what you expect.

Tony (G3PTD)


Re: Frequency calibration of the tinySA against a GPS reference clock #tinysa

 

The upper frequency is at least 10MHz. Above that it could work and there could be jitter. A trippler seems safer.
--
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


Re: Frequency calibration of the tinySA against a GPS reference clock #tinysa

 

Datasheet states:
"Timepulse Configurable 0.25 Hz to 10 MHz"
So I guess that is an undocumented feature?

Do you know if the same is true for the 8M?
I found some fairly cheap M8N modules so thinking of ordering some.

On Fri, 10 Jan 2020 at 22:01, <erik@...> wrote:
The NEO-7M can output a GPS locked 30MHz.



Re: Frequency calibration of the tinySA against a GPS reference clock #tinysa

 

It's amazing what's out there in cheap easy to use prototyping modules these days!

Jerry


On Fri, Jan 10, 2020 at 01:01 PM, <erik@...> wrote:
The NEO-7M can output a GPS locked 30MHz.


Re: Frequency calibration of the tinySA against a GPS reference clock #tinysa

 

The NEO-7M can output a GPS locked 30MHz.

--
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


Re: Frequency calibration of the tinySA against a GPS reference clock #tinysa

 

I doubt the MMIC of the circuit used by w1vd is required here,
the Si4432 already has a high gain amp to make the 30mhz crystal oscillate.
So just a couple diodes plus some caps and coils, here's a more detailed description
of the frequency tripler:? ??
The description was quite useful to me, wasn't obvious how?that thing worked.

Alternately, G0UPL sells a couple different si5351 kits that can be GPS disciplined:
? ??
? ??
and a GPS:
? ??

The VFO in the first link includes a display and rotary encoder.
The second is cheaper, apparently configured by switches and/or a serial port.
Either can create very accurate quadrature clocks across all of HF:??/g/qrptech/message/326
Could be useful for many other projects as well.
I don't believe you have to use his GPS.

Jerry, KE7ER


On Fri, Jan 10, 2020 at 08:36 AM, Jerry Gaffke wrote:
Interesting, good to know how accurate the Si4432 is, and how to correct it.

Any error in the frequency of an Si4432 will be due to the 30mhz crystal reference oscillator.
The ideal would be to generate a GPS disciplined 30mhz reference that we feed the Si4432.
Fortunately, 30mhz is the third overtone of the 10mhz commonly available from a GPS module:
? ??

Jerry, KE7ER


Re: Frequency calibration of the tinySA against a GPS reference clock #tinysa

 

Cheaper alternative, since it does not require any additional hardware, would be to feed the output (simple wire as antenna would probably be sufficient)
to a receiver 1KHz up or down from some on air frequency standard. I often use this with DDS and Si5351 modules since I do not have a frequency meter.
The frequency difference is measured with software like baudline.?

When all the necessary bits and pieces arrive I planed on using the Si5351 module to feed the clock to the 4432. Adjusting the frequency of the clock
should give spot on output. 5351 can also be fed from a 10MHz reference for stability.

If a remember correctly the 4432 datasheet listed multiple ways of adjusting the frequency so maybe that is something worth looking into?


On Fri, 10 Jan 2020 at 13:54, <erik@...> wrote:
The xco's in the SI4432 modules are not very well calibrated and also rather temperature sensitive.
But how to calibrate the tinySA so measured frequency are correct and the signal generator is not way off?

It all starts with a GPS locked reference clock.
A simple solution is the NEO-7M module you can find on eBay below 10$. Using the U-Center PC SW this module can be set to output a GPS locked 10MHz.
As the module loses the satellites when outputting above 1kHz I'm using it with an external GPS antenna, 1 meter away from the electric noise.
Using the 10MHz output of the NEO-7M I calibrated a 8 digit frequency counter that can be found on eBay for around 10$.
This counter has a txco, has very little warmup time and is extremely stable. The only concern with the counter is the required input power.
For improved readability I added a transparent dark red plastic sheet in front of the 8 digits.


Re: Frequency calibration of the tinySA against a GPS reference clock #tinysa

 

Interesting, good to know how accurate the Si4432 is, and how to correct it.

Any error in the frequency of an Si4432 will be due to the 30mhz crystal reference oscillator.
The ideal would be to generate a GPS disciplined 30mhz reference that we feed the Si4432.
Fortunately, 30mhz is the third overtone of the 10mhz commonly available from a GPS module:
? ??

Jerry, KE7ER


Frequency calibration of the tinySA against a GPS reference clock #tinysa

 

The xco's in the SI4432 modules are not very well calibrated and also rather temperature sensitive.
But how to calibrate the tinySA so measured frequency are correct and the signal generator is not way off?

It all starts with a GPS locked reference clock.
A simple solution is the NEO-7M module you can find on eBay below 10$. Using the U-Center PC SW this module can be set to output a GPS locked 10MHz.
As the module loses the satellites when outputting above 1kHz I'm using it with an external GPS antenna, 1 meter away from the electric noise.
Using the 10MHz output of the NEO-7M I calibrated a 8 digit frequency counter that can be found on eBay for around 10$.
This counter has a txco, has very little warmup time and is extremely stable. The only concern with the counter is the required input power.
For improved readability I added a transparent dark red plastic sheet in front of the 8 digits.



Now the calibrated frequency counter can be used to measure frequency of of the tinySA when the tinySA is set to signal generator mode
Setup is simple and the tinySA in signal generator mode has no problem with driving the frequency counter



As you can see the 10Mhz output frequency is way of (9998470Hz) and the changing of the frequency with the warming up of the SI4432 modules is very visible.
As there are two SI4432 with independent oscillators you need to do two frequency measurements well apart to calculate the two frequency correction factors. I chose F1=1MHz and F2=100MHz,
the measured frequencies are input to a small spreadsheet (B3 and C3) doing the calculation.



The used formulas are shown in A6 till A9. The values in the output fields B8 and B9 are to be entered in the "LO correction" fields the settings panel of SA.exe as can be seen in the last picture.



After entering the correction values the output frequencies are almost spot on.
Due to the limited number of bits setting the PLL values the minimum frequency step size of the SI4432 is 156Hz so there can always be an error of some 100Hz.
--
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


Re: How important is the quality of the mixer in the tinySA. #tinysa

 

As far as I am aware of there are no readily available H-mode mixers that will accept input between 433MHz and 900MHz
As they are based on switches they have limitations on the switching speed
--
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


Re: How important is the quality of the mixer in the tinySA. #tinysa

 

Probably a really dumb question but did you try the "H-Mode" mixer? Not sure what the frequency range of that topology is
and it probably won't be any cheaper since it requires transformers (unless you scavenge those from some equipment like old ethernet cards) but
it should give better figures, or at least that is what I read and probably misinterpreted.

On Mon, 6 Jan 2020 at 18:24, <erik@...> wrote:
The mixer in the tinySA is a relative expensive part and it is obvious to see if cost can be reduced by using for instance an active gilbert cell mixer such as the IAM81008. One big advantage is the active mixer will often have conversion gain (+9dB for the IAM81008) instead of a loss (about -7dB for the ADE-1) so you can save on the cost of the LNA.



How important is the quality of the mixer in the tinySA. #tinysa

 

The mixer in the tinySA is a relative expensive part and it is obvious to see if cost can be reduced by using for instance an active gilbert cell mixer such as the IAM81008. One big advantage is the active mixer will often have conversion gain (+9dB for the IAM81008) instead of a loss (about -7dB for the ADE-1) so you can save on the cost of the LNA.

In evaluation the performance differences I looked at three characteristics.
1: The noise floor at a certain resolution bandwidth and nothing on the input
2: The maximum signal that can be measured without being compressed (1dB compression point)
3: The 3rd order Input Intermodulation point. This is somewhat complex to explain but quantifies the ability to measure two signals without generating artifacts by unwanted mixing of the two signals.

So I did quick comparison of the ADE-25MH and a IAM81008
The IAM 81008 based tinySA has in total 16dB less loss in the signal path so I used 16db attenuation for all measurements. This -16dB can be reduced to get more sensitivity (like an LNA) but reducing will also imply more distortion (lower IIP3) and lower 1dB compression point.

Lets first look at the noise floor when measuring the power calibration signal from the tinySA itself.


The measured signals are at the same level but the ADE-25MH based tinySA(purple line) has a bit less noise versus the IAM81008 based tinySA (blue line), but not a big difference

The 1dB compression point was equal at 0dBm for both versions version. This confirms the -16dB attenuation used with the IAM81008 gives a fair comparison

Next is the IIP3 measurement



The important signals are at 5MHz and 8MHz. These are the unwanted intermodulation products of the two input signals at 6MHz and 7MHz.
The numbers a the top (IIP3=9.5dBm) relate to the blue line of the IAM81008. The purple ADE-25MH line has lower signal levels for 5MHz and 8MHz and the calculated IIP3 is at least 4dB better so even with 16dB attenuation the IAM does not perform better then the ADE-25MH. Reducing the attenuation makes the performance quickly much worse

Last step is to establish the noise level


And this shows the biggest performance difference. The IAM81008 (blue line) has a 10dB high noise floor compared to the ADE-25MH. This difference will depend on the selected RBW as the difference is less in the first measurement shown.
Due to the high sensitivity of the IAM81008 the tinySA is also more susceptible to stray radiation from other sources. The big bump at 44MHz is an alias of a mobile phone cell tower signal nearby and the FM broadband stations around 90MHz also have more impact.

This was a rather quick measurement but it provides some insight in why the first mixer in a spectrum analyzer is so important.
--
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


Re: 3.3V compatible Arduino boards #tinysa

 

"Bluepill" is really simple with?PlatformIO (plugin for VSCode editor).
Pair that with STLink clone (~$2), or another bluepill with blackmagic probe
and you get a proper debugger, no need for a boot loader, easy to interface ...
Makes a world of difference.
I stopped using AVR, makes no sense when you can get an STM32 at 72MHz (overclockable to 128MHz) , 128K flash,
20K RAM, better ADC etc for the same amount or less.


On Mon, 6 Jan 2020 at 09:32, <erik@...> wrote:
Finding 3.3V compatible Arduino boards is bit more difficult than the good old Uno or Mega.
There is a nice overview of all Arduino boards with their features including the input/output voltage.

The boards that make most sense are the Due and the Zero.
The latter is no longer produced but there is a nice alternative from a company called Protoneer

This board is pin and SW compatible with the original Arduino mini
The cheapest option of all 3v3 boards is the SMT32 Blue Pill board (lowest price I found was 1.76$ with free shipping)? but that requires a rather complex installation of the STM development environment inside the Arduino IDE.
A bit easier to use should be the version of the Blue pill with the Arduino bootloader already preloaded (can be found below 4$)? which is called the "Maple mini". I did not test this myself.

--
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


Re: 3.3V compatible Arduino boards #tinysa

 

There is nothing in the Arduino SW that requires strict timing (when using HW interrupts for the rotary encoder)
Scanning may be a bit slower but it should work.
Best if you try to compile the tinySA.ino to check all libraries are available. I'm only using spi.h and wire.h and a library for the chosen display.

If you want to use a local interface you need to either poll the rotary encoder, which will not work very well, or make sure you keep the external HW interrupt lines free for the rotary (inputs 2 and 3 for the nano?)
To reduce pins count using a spi interface to the PE4302 and the display may work better?

--
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


Re: 3.3V compatible Arduino boards #tinysa

 

¿ªÔÆÌåÓý

Erik,
I long ago standardized on using standard Arduino nano boards (5V).
For my build I plan to use one along with cheap bi-directional level translator boards.
5V Arduinos use an 18MHz clock whereas the 3.3v boards use a 16MHz clock..? do you
see any problems with software delays or anything?
73,
Gary
WB6OGD

On 1/6/2020 12:32 AM, erik@... wrote:

Finding 3.3V compatible Arduino boards is bit more difficult than the good old Uno or Mega.
There is a nice overview of all Arduino boards with their features including the input/output voltage.

The boards that make most sense are the Due and the Zero.
The latter is no longer produced but there is a nice alternative from a company called Protoneer

This board is pin and SW compatible with the original Arduino mini
The cheapest option of all 3v3 boards is the SMT32 Blue Pill board (lowest price I found was 1.76$ with free shipping)? but that requires a rather complex installation of the STM development environment inside the Arduino IDE.
A bit easier to use should be the version of the Blue pill with the Arduino bootloader already preloaded (can be found below 4$)? which is called the "Maple mini". I did not test this myself.

--
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


Calibrating the power level of the tinySA #tinysa

 

Using the GPIO2 output of the LO SI4432 it is possible to create a fairly accurate -30dBm power reference level as the output swing of the GPIO port is 3 Volt when the current is below the drive limit.


Using a DC blocking capacitor (100nF) and a voltage divider (3k7 + 50ohm) provides a 50 ohm matched output and reduces the load on the GPIO port below the current limit.

?

The PowerReference output provides a -30dBm power level at the fundamental of the selected GPIO2 output frequency

If the 3k7 resistor cannot be found a 3k9 resistor can be used. This will provide a -30.4 dBm output power
For best accuracy during power calibration you should use a -10dB or more attenuator setting to ensure the input impedance of the tinySA is close to 50 ohm. This because the input impedance of the mixer is rather ill defined.

--
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


3.3V compatible Arduino boards #tinysa

 

Finding 3.3V compatible Arduino boards is bit more difficult than the good old Uno or Mega.
There is a nice overview of all Arduino boards with their features including the input/output voltage.

The boards that make most sense are the Due and the Zero.
The latter is no longer produced but there is a nice alternative from a company called Protoneer

This board is pin and SW compatible with the original Arduino mini
The cheapest option of all 3v3 boards is the SMT32 Blue Pill board (lowest price I found was 1.76$ with free shipping)? but that requires a rather complex installation of the STM development environment inside the Arduino IDE.
A bit easier to use should be the version of the Blue pill with the Arduino bootloader already preloaded (can be found below 4$)? which is called the "Maple mini". I did not test this myself.

--
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


Re: Extending the tinySA with a free reference clock output #tinysa

 

Temp and Vdd could be responsible for most of the possible variation in GPIO current.
But the datasheet doesn't tell us.

Mouser sells the Si4432 by the 2500 piece reel at $4.19 each.
Makes me wonder if the $2 Si4432 modules on ebay are using a $0.25 clone,
or perhaps factory seconds.

GPIO current is not something a clone manufacturer would monitor closely.


>? Output voltage measured with calibrated scope terminated also 50ohm (so total of 25 ohm to ground) is 47mVpp.
>? The shape is a good square wave. So this should be the reference level of -22dBm in the fundamental

Very cool.
I've got a bunch of the ElectroDragons winging there way to me now, as I type.
Looking forward to playing with them.
Not only for use as an SA, but also for their intended purpose
of?short range digital communications

I wonder how much temperature affects the RSSI values we read from the Si4432.
Perhaps once we run out of other things to do, we could correct the RSSI values
using the internal temperature sensor
Though quite possible that SiLabs already does this internally.

Jerry, KE7ER


On Sat, Jan 4, 2020 at 08:54 AM, Jerry Gaffke wrote:
Page 12 table 7 of the Si4432 datasheet shows that the GPIO outputs
can be programmed to four different levels.
That table also shows that with the drive level set to its maximum of Iomaxhh,
it might be able to deliver only 1.8 ma, or as much as much as 5.4ma.
So GPIO's on some Si4432 chips might have 3x more available output current than others?
due to process variations,?die location on the wafer, or phase of the moon.
That's 3*3= 9 times more power, almost 10dB.
We will probably never see it that bad, but even 2 or 3 dB variation is not welcome here.


Re: Extending the tinySA with a free reference clock output #tinysa

 

Thanks for these calculations.
I tried the circuit you proposed. capacitor + 1k5 + 50 ohm to ground.
Switched GPIO2 to maximum drive capacity.
Output voltage measured with calibrated scope terminated also 50ohm (so total of 25 ohm to ground) is 47mVpp. The shape is a good square wave. So this should be the reference level of -22dBm in the fundamental
When reducing the GPIO2 drive the output voltage at the port immediately drops below the 3Vpp and the output level decreases so I assume its indeed better to go for 4k7 to have some margin.
-
HBTE Files section:?/g/HBTE/files
Erik, PD0EK


Re: Extending the tinySA with a free reference clock output #tinysa

 

Eric,

A free reference level is an excellent addition.
Accurate measurements across 1 to 30 mhz is sufficient for many of us.

Page 12 table 7 of the Si4432 datasheet shows that the GPIO outputs
can be programmed to four different levels.
That table also shows that with the drive level set to its maximum of Iomaxhh,
it might be able to deliver only 1.8 ma, or as much as much as 5.4ma.
So GPIO's on some Si4432 chips might have 3x more available output current than others?
due to process variations,?die location on the wafer, or phase of the moon.
That's 3*3= 9 times more power, almost 10dB.
We will probably never see it that bad, but even 2 or 3 dB variation is not welcome here.

I suggest trying the following network at the GPIO pin, where "out" goes off to the 250mhz LPF:
? ? GPIOpin-----0.1uF-----1.5Kohm-----out-----50ohm-----GND

The series cap allows the GPIO pin to balance the load between the high and low side drivers,
reducing the work it must do considerably.? It also centers the "out" signal around ground level.

The 1.5k resistor limits the GPIO current to around 1ma.

The 50 ohm resistor establishes the impedance that any reflections coming back out of the LPF see.
(The impedance seen is the parallel combination of 1.5k and the 50 ohms, so 52 ohms would be ideal.)

The 1.5k resistor is driving the parallel combination of our 50 ohm resistor and the 50 ohm impedance
of the 250mhz LPF, or 25 ohms.? Assuming a 3v square wave into the 1.5k resistor,
the voltage at the output will be reduced to a pk-pk square wave of? ?3.0*25/(1500+25) = 0.0492 volts.
Assuming the fundamental has a peak voltage of half that square wave,
the fundamental signal out is? (0.0492/2)/1.414? =? 0.0174 volts rms
and has a power level into the 250mhz LPF of? 0.0174*0.0174/50 = 6.055e-6 Watts, or 0.006055 mW.
In dBm, that's? ?10*m.log10(0.006055) = -22.2 dBm.

If we don't need a -22dBm signal, then increase the value of the 1.5k resistor.
This will reduce any dependence on device charactreistics.
A 4.7k resistor (or even 10k) may give more consistent results.

Eric has apparently just put a 50 ohm load on the GPIO pin and measured the same -22dBm signal that I have calculated.
Without the 1.5k limiting resistor, I would have expected considerably more power in his measurement.
However, if he did not have the DC blocking cap, that could well be a loss of 6dB right there.
?
There's almost certainly a few errors in what I am proposing above, let us know if you see them.

Also, I'm showing far more precision in my calculations than needed,
we'll be doing good if my figures are within 10%.

Jerry, KE7ER



On Sat, Jan 4, 2020 at 05:38 AM, <erik@...> wrote:
The drive capability of the GPIO outputs is rather limited. When loaded with 50 ohm the output is? between -21dBm and -22dBm. Excellent level for power calibration