What an embedded receiver has to deliver, what it cannot fix, and the volume at which building one becomes the less expensive answer.
What an embedded receiver has to deliver, what it cannot fix, and the volume at which building one becomes the less expensive answer.
Monitoring, direction-finding and test products are built around a receiver their maker did not design, and the choice of receiver is usually argued on radio-frequency performance. This paper derives the error budget of a distributed radio-location node and shows that the receiver's own time-delay estimation contributes under one hundredth of one percent of the position-error variance, while time transfer, inter-channel matching, enclosure temperature and site geometry contribute the rest. It then works the ten-year cost arithmetic for building a front end against buying one, gives the volume at which that answer reverses, and lists the contract terms that decide whether an embedded module is a component or a schedule risk.
System integrators and product architects embedding a receiver inside a branded product. Program and supply-chain managers who own the ten-year cost. RF and mechanical engineers sharing an enclosure, a thermal budget and a calibration interval.
A company that sells spectrum monitoring systems sells nodes, a detection engine, a database and a map, and underneath all of that it needs a calibrated receiver. There are three ways to get one: design it, buy it as a finished module, or buy an uncalibrated board and finish it in house.
The receivers are compared first, so datasheets go side by side and the comparison is made on noise floor and phase noise. Those figures have to be adequate, and section 3 shows that they are rarely the discriminator. The terms that decide a program over ten years are different ones: a front-end filter changed by the supplier without being classed as calibration-affecting, so that fielded nodes disagree with the ones built last quarter and no as-found data exists to say by how much; a timestamp whose uncertainty was never specified; an end-of-life notice with no migration target.
The third route, a low-cost wideband board characterized against a reference source and corrected in software, is worth costing before it is chosen. The radio design is not the expensive part. The calibration fixture, the traceability chain, the qualification and ten years of obsolescence engineering are, and section 6 shows that none of them scales down to fifteen units a year.
An embedded receive module is a supply boundary before it is a component. What matters is what crosses the line: calibrated baseband samples, an absolute timestamp with a stated uncertainty, a calibration table with its traceability statement, a versioned interface, and a device identity carrying no vendor branding. Figure 1 is a list of deliverables drawn as a chain. The timestamp uncertainty, the traceability statement and the interface deprecation period are the three deliverables that a procurement specification should name explicitly, because none of them appears on a datasheet.
Two measurements dominate these products: locating an emitter from the difference in arrival time between nodes, and taking a bearing on it from one node. Neither is limited by a receiver specification, and the two derivations below say what each is limited by.
The conversion from timing to distance is the whole physics of the method:
where
One nanosecond is thirty centimeters, so the position answer is set by whatever assigns time to a sample. Geometry then multiplies the error:
where
Note what G is made of. It contains no receiver parameter. It is a property of the site layout, and Figure 2 draws the two equations together.
Figure 2 plots both effects on one axis. The logarithmic time axis is what bends the lines; the underlying relations are straight.
Amplitude-comparison direction finding takes the arctangent of the ratio of two channel outputs, so any gain error between them rotates the answer. For a source at 45 degrees, where the channels should read equal, a gain mismatch ΔG gives:
where
Worked for one decibel: 101/20 is 1.1220, whose arctangent is 48.29 degrees, so the error is 3.29 degrees. That is larger than many published direction-finding accuracy figures, and it is produced by a mismatch smaller than many published amplitude accuracy figures. Figure 3 draws the relation, and it marks the point that matters commercially: for two tolerances uniform on ±A, the signed difference has a triangular distribution on ±2A and its 97.5th percentile is 1.553A, so a set of absolute certificates does not make a matched set. Pairwise matching is a separate deliverable, asked for by name.
Arrival-time uncertainty at a node is the root sum of squares of independent terms, and Table 1 evaluates it for one representative node:
where
| Term | 1σ | Variance (ns²) | Share |
|---|---|---|---|
| Correlator, 5 MHz signal, 10 dB SNR, 10 ms integration | 0.23 ns | 0.05 | 0.008 % |
| Time transfer, from a ±50 ns 1PPS bound taken as 2σ | 25 ns | 625.0 | 98.5 % |
| Antenna and feeder delay residual | 2 ns | 4.00 | 0.6 % |
| Timestamp quantization at the 8 ns engine clock | 2.31 ns | 5.33 | 0.8 % |
| Root sum of squares | 25.19 ns | 634.38 | 100 % |
| The 1PPS figure is published, quoted with its option; the correlator and feeder terms are the worked assumptions stated under equation (4). | |||
Check it. 0.05 plus 625.0 plus 4.00 plus 5.33 is 634.38 ns², whose square root is 25.19 ns; times c, by equation (1), that is 7.55 m, and at a dilution of precision of 3, by equation (2), it is 22.7 m. Make the correlator ten times better and the first term falls to 0.0005 ns², the total to 634.33 ns², and the position answer improves by about one millimeter. Figure 4 draws the four terms on a logarithmic scale, which is the only scale that shows them together.
In a working time-difference geolocation network of this kind, the receiver's own timing precision accounts for about one hundredth of one percent of the position-error variance. The timestamp uncertainty sets the position error, and the receiver's estimation term does not. What is being bought is a timestamp with a stated uncertainty; the signal chain behind it has to be adequate, and it is not the discriminator.
That is the buying criterion, and it applies to any supplier. Score a candidate on the uncertainty of the timestamp it delivers, the pairwise matching of a set of units, the temperature coefficient of amplitude, and the terms under which those may change. Sensitivity has to be adequate. It is not the discriminator.
The ICX-FieldHawk family includes two module variants for this role: the ICX-200U, 9 kHz to 20 GHz, and the ICX-400U, 9 kHz to 40 GHz, each with 100 MHz of analysis bandwidth and each shipped as a USB (Type-C) module or as a networked module with Gigabit Ethernet. The two share one FPGA measurement core, have no display, and are operated from a host; published values hold after 10 minutes of warm-up, at 25 °C ambient, with spur reject standard on. Table 2 sets them against requirements derived for a 25 m position and 2 degree bearing specification. Before this table the argument is physics; after it, instrumentation and contract.
| Requirement | Derived value | Published module value |
|---|---|---|
| Node time-transfer uncertainty | ≤ 28 ns, 1σ, from equation (2) at G = 3 | GNSS 1PPS ±100 ns standard; ±75 ns with option 22 or 05; ±50 ns with option 23 or 06 |
| Timestamp granularity | ≤ 10 ns, under the sync term | 8 ns lowest time resolution |
| Pairwise gain match across a set | ≤ 0.6 dB, giving 1.97° from equation (3) | Not specified; amplitude accuracy on the ICX-400U is ±2.0 dB to 9.5 GHz and ±3.0 dB above, and it is absolute |
| Reference stability through an outage | ≤ 168 ns/hour of holdover drift, to hold 28 ns through a 10 minute outage, from equation (2) | Frequency accuracy < 1 ppm with the TCXO and with the option 01 OCXO; OCXO temperature stability < 0.15 ppm, aging < 1 ppm/year |
| Continuous IQ to host | ≥ 20 MHz sustained | 25 MHz continuous; 100 MHz burst into 128 Mbyte; over USB 3.0 (USB 2.0 bandwidth limited) or Gigabit Ethernet |
| Dissipation and envelope | ≤ 20 W | 10 to 14 W and < 420 g (ICX-400U USB); 13 to 16 W and < 665 g (LAN) |
| Operating temperature | site ambient plus internal rise | 0 to 50 °C; −20 to +65 °C with option 40; −40 to +65 °C with option 41 |
| Published values from the ICX-FieldHawk USB and LAN module datasheet, conditions as stated above; the amplitude figure is printed for the ICX-400U. | ||
The first row of Table 2 is the one the paper turns on. The standard 1PPS does not meet the derived requirement. Taken as a 2σ figure, ±100 ns is a 50 ns synchronization term, which puts the node at 45.1 meters rather than 22.7; the ±75 ns option reaches 33.8 meters, and the ±50 ns option, 23 on a USB module and 06 on a LAN module, reaches the 22.7 meters Table 1 reports. It is the one option on the list that meets the specification, so it belongs on the quotation by number.
The fourth row cannot be scored from a datasheet. The published TCXO and OCXO figures are frequency accuracy and temperature stability, not holdover drift: read as drift, 1 ppm reaches the 28 ns budget in 28 ms of free run and the OCXO's 0.15 ppm stability figure in 0.19 s, which is why neither number answers the question. Ask for drift after the last correction, over the outage the node has to survive, and treat an answer quoted in ppm as an answer to a different question.
The second row is the one the module answers directly, and it is the row that is cheapest to verify on a bench. Figure 5 is the per-pulse table the same engine produces on a handheld of the family, at the 8 ns time resolution the row quotes.
Figure 5 is read for one thing: the interval column resolves 1 ns changes across a 1.5 µs period, which is the timestamp granularity the second row asks for. It says nothing about the first row, because synchronization between two nodes cannot be shown on one display, and section 7 gives the bench test that measures it.
The host software, SpectraCore, is a full desktop application, which is the right tool for bring-up and acceptance and not the deliverable inside a branded product. What matters is that it can be bypassed: the modules are driven from C, C++, C#, Python, MATLAB, Qt and LabVIEW over one unified API, with SCPI as standard, on Windows 11, 10, 8 and 7 (x86, x64 and AArch64, the last on LAN models only) and on Debian 12 to 10 and Ubuntu 24.04 to 18.04 (x64 and AArch64). For a product built on open signal-processing tooling, the -SDR option, orderable on any current ICX model by appending -SDR to the part number, adds SoapySDR and GNU Radio support with the unit's calibration files installed with the driver, documented on Ubuntu 22.04 or later on x86_64 with GNU Radio 3.9 or later, with every standard measurement function still installed. Figure 6 draws the stack. Bring a set up under SpectraCore on a bench, then ship an AArch64 Linux node on a LAN module with none of it.
The fifth row separates two specifications that read alike on a datasheet and behave differently in a product: burst depth and sustained rate. A 100 MHz burst fills the 128 Mbyte memory and stops; a 25 MHz continuous stream runs for as long as the host keeps up, over a USB 3.0 link that the datasheet marks as USB 2.0 bandwidth limited or over Gigabit Ethernet. Figure 7 shows the record that crosses the boundary of Figure 1: a stored IQ file replayed on the instrument.
Figure 7 is what the fifth row buys. Every panel is a projection of one array of complex samples, so a host that cannot sustain the stream does not lose a panel, it loses the record. At 31.25 MHz and 16-bit components the stream is 125 Mbyte per second, which sets the host interface and the storage path before it sets anything about the receiver.
A sealed enclosure reaches a steady rise above ambient set by its thermal resistance, on a time constant set by its mass:
where
Evaluate it. 15 W times 1.67 K/W is 25.1 K, and 1.2 times 900 times 1.67 is 1,804 s, so the enclosure is within 5 percent of its final temperature after 90 minutes and not before, and at 0.02 dB/K that rise is 0.50 dB of amplitude walk. At 45 °C ambient it also puts the internal air at 70 °C, outside even the −40 to +65 °C class of option 41. The fix is area, a conduction path or a lighter finish, and it is decided by whoever owns the enclosure, not by the receiver purchase. Figure 8 draws the transient.
Figure 8 is the reason the measurement-practice section tells the bench to wait. The frequency domain is where a reference looks good, and the time and temperature domains are where it has to perform; the variance column of Table 1 shows which of the two the position answer depends on. A phase-noise plot characterizes a reference from 100 Hz offset upward; holdover across a ten minute outage lives near 1 mHz, five decades lower, and aging and temperature coefficient do not appear on it at all.
The crossover is where a fixed cost spread over a lifetime volume meets a flat unit price:
where
Table 3 is an illustrative cost structure to substitute into, not a quotation; the line items are the ones a program carries, and the values are representative. Figure 9 draws the two paths it defines across the volumes a program sees.
| Line item | Build | Buy |
|---|---|---|
| Design and layout: RF, digital, firmware, mechanical, three spins | $1,610,000 | n/a |
| Calibration fixture development and infrastructure | $500,000 | n/a |
| Qualification, documentation, first article | $265,000 | n/a |
| Integration: enclosure, thermal path, host software, product qualification | included above | $450,000 |
| Sustaining, metrology and obsolescence, 10 years | $2,200,000 | included |
| Fixed total | $4,575,000 | $450,000 |
| Marginal cost per unit; time to first delivery | $2,500; 24 to 30 months | $6,000; lead time |
| Per unit at 15 units/year | $33,000 | $9,000 |
| Per unit at 500 units/year | $3,415 | $6,090 |
| Illustrative structure to substitute into, not a quotation. Every value in the table is representative. | ||
Table 3 charges the buy path for the enclosure, the thermal path, the host software and the qualification of the finished product, which an integrator pays whichever way the decision goes; without that $450,000 the crossover would read 131 units a year instead of 118. Buying costs about a quarter as much per unit at fifteen units a year and about twice as much at five hundred. Figure 9 draws both paths across that range.
Lifecycle risk belongs in the same arithmetic. For M parts with no second source and end-of-life notices at rate h, the expected number of events over a life t is M(1 − e−ht): at 25 parts and 0.08 per year over ten years, 13.8 events, and the probability of none is e−20, about two in a billion. Obsolescence is a workload, and the contract decides whose engineers absorb it.
The pattern this paper describes is the one the ICX -SDR option datasheet documents: teams integrating spectrum monitoring, direction finding or signal intelligence systems use the receiver as a calibrated front end and write their own application on top, in their own language and user interface, and system integrators embed the receivers behind their own EMF measurement, 5G analysis and network coverage software. Each of those products is sold under the integrator's name, and each made the judgment of section 6 at a volume where the arithmetic says buy.
Table 4 collects the governing relations and published values with their conditions.
| Quantity | Relation or value | Condition |
|---|---|---|
| Range from time | Δr = cΔτ; 1 ns = 0.2998 m | vacuum |
| Position error | G cστ | G = 1/(2 sin(θ/2)), two nodes |
| Bearing error from mismatch | arctan(10ΔG/20) − 45°; pairwise spread 1.553A | source at 45°; two uniform ±A tolerances, 97.5th percentile of the signed difference |
| Build/buy crossover | 118 units/year | illustrative Table 3 values, including the buy-side integration cost |
| Module GNSS 1PPS | ±100 ns standard; ±75 ns with option 22 or 05; ±50 ns with option 23 or 06 | only the ±50 ns option meets the 25 m case at G = 3 |
| Module coverage, bandwidth, power | ICX-200U 9 kHz to 20 GHz; ICX-400U 9 kHz to 40 GHz; 100 MHz; 10 to 14 W (USB), 13 to 16 W (LAN) | 10 min warm-up, 25 °C, spur reject standard on |
| Frequency reference | accuracy < 1 ppm, TCXO or option 01 OCXO; OCXO stability < 0.15 ppm, aging < 1 ppm/year | holdover drift not published; ask for it |
Take the ICX-200U for nodes below 20 GHz, which covers civil monitoring and direction finding through the microwave point-to-point bands, and the ICX-400U where coverage reaches radar or satellite bands above it, accepting ±3.0 dB above 9.5 GHz. Take the ±50 ns GNSS option, 23 on a USB module or 06 on a LAN module, on every node in a locating network, because section 5 shows that nothing below it meets a 25 m specification; option 01 where the reference has to hold its temperature stability through the day, with holdover drift obtained in writing; and option 40 or 41 wherever site ambient plus the rise from equation (5) exceeds 0 to 50 °C. For a node that runs open signal-processing tooling, order the -SDR configuration of the same part number.
| Symbol | Meaning | Units |
|---|---|---|
| c | Speed of light | m/s |
| Δr, Δτ | Range and arrival-time difference | m, s |
| G | Geometric dilution of precision | dimensionless |
| στ, σp | Time and position uncertainty | s, m |
| ΔG, εθ | Gain mismatch, bearing error | dB, degrees |
| σest, σsync, σcal, σq | Estimation, time-transfer, residual delay and quantization uncertainty | s |
| τth, m cp | Thermal time constant, thermal mass | s, J/K |
| θ, L, A | Subtended angle; program life; tolerance half-width | degrees, years, dB |
| P, Rth, kT | Dissipation, thermal resistance, amplitude coefficient | W, K/W, dB/K |
| N*, Cbuild, Cbuy, M, h | Crossover volume, the two fixed costs, single-sourced parts, end-of-life rate | units/yr, currency, count, 1/yr |
If you are sizing an embedded receiver into a product of your own, our application engineers would be glad to work the timing budget and the build-against-buy arithmetic against your volume: info@berkeleynucleonics.com.