Everything space & RF. Amateur radio operator (EA4GPZ / M0HXM). PhD in Mathematics from @Matematicas_UAM. he/him

Tres Cantos, España
Joined October 2016
The ESP32 ruining as an 80 Maps IQ radio was great to see, but this is amazing.
Turned a WiFi 7 router into a 320Msps SDR. Custom firmware on its MediaTek MT7996 streams raw 14-bit IQ from 2.4/5/6GHz over 10GbE without dropping samples. It's not a snapshot mode, the waterfall is just one thing reading the stream. github.com/h0m3us3r/w1700k-s…
7
19
291
14,841
New blog post: Decoding the Roman Space Telescope. On August 31 I observed the Roman telescope S-band telemetry with the Allen Telescope Array some time after launch. This post is a summary of the observation, including the telemetry decode and a preliminary analysis.
2
12
54
2,951
In this recording, Roman is transmitting 19.5 kbaud PCM/PSK/PM with a subcarrier of 1.7 MHz, using CCSDS concatenated coding with 8 interleaved RS codewords, and AOS frames. I have managed to interpret the Space Packet timestamps and find some ASCII strings.
1
18
602
New blog post: On matched filtering in the presence of carrier frequency offset. In this short maths note I explain how to tweak a matched filter to improve the SNR when there is carrier frequency offset.
1
3
31
2,152
I close with some remarks about usage in practice. When the frequency grid spacing is narrower than the inverse of the number of samples, the conventional matched filter performs quite well and the DPSS-windowing improvement is small. For larger spacings it provides a minor gain.
1
9
382
New blog post: X-engine correlator on a Ryzen NPU. A few months ago I posted about the basics of NPUs in Ryzen AI chips. I wanted to tackle a real-world problem to get more experience, so I've implemented an X-engine correlator like the ones used in radio astronomy.
2
3
30
1,743
Next I consider the data flow through the whole NPU array. This leads to a design of the Ethernet packets that the X-engine ingests. There is a tradeoff between having the data in the order that the X-engine prefers and having it in an order that is easy to generate in the PFBs.
1
3
321
Finally I go into the technical details of how to implement all this with the mlir-aie framework, and the challenges to program the DMA engines in the way we want. I close with some benchmarking results. Read more: destevez.net/2026/08/x-engin…
6
313