Sign in

Tom Verbeure

@tomverbeure.bsky.social
424 followers 162 following 431 posts

Plays with FPGAs. There can never be enough LEDs. Hardware engineer at Nvidia, but my views here are my own. he/him. Also @tom_verbeure at the woolly elephant and the former bird site

PostsRepliesMedia
Tom Verbeure @tomverbeure.bsky.social · 24/08/2026
Refurbishing a Tektronix TDS7104 Oscilloscope tomverbeure.github.io/2026/08/23/T...
TDS7104 oscilloscope
2100
Tom Verbeure @tomverbeure.bsky.social · 29/06/2026
Rohde & Schwarz AMIQ Modulation Generator - Reviving the PC System tomverbeure.github.io/2026/06/28/R...
Motherboard of the AMIQ. VGA monitor showing a BIOS boot screen.
Spectrum analyzer on top of the AMIQ on top of a R&S SFQ TV Test Transmitter
ATI Rage XL GPU plugged into PCI riser board
Corroded electrolytic caps.
150
Tom Verbeure @tomverbeure.bsky.social · 14/06/2026
A Galois Field Arithmetic Primer tomverbeure.github.io/2026/06/14/G...
tomverbeure.github.io
A Galois Field Arithmetic Primer
151
Tom Verbeure @tomverbeure.bsky.social · 13/04/2026
Breaking Rohde & Schwarz AMIQ License Keys - the Hard and the Easy Way tomverbeure.github.io/2026/04/12/A...
License key entry formEaster egg: "Hi XXX!"Generated license key matches the original.
070
Tom Verbeure @tomverbeure.bsky.social · 29/03/2026
Repair of 2 Agilent 54831 Oscilloscopes In the end, it comes down to fixing two early 2000s PCs… tomverbeure.github.io/2026/03/28/R...
2 Agilent 54831 oscilloscope in the trunk of my carCPU cooler removed, next to Pentium III CPUCompactFlash adapter with 16GB CF card4 waveforms on oscilloscope screen. There's a lot of noise on the waveforms.
2170
Tom Verbeure @tomverbeure.bsky.social · 06/03/2026
Polyphase Channelizers with Frequency Offset - a Bluetooth LE Example tomverbeure.github.io/2026/03/05/P...
Spectral density waterfall plot of BLE traceDSP pipeline of a polyphase channelizer with half-bin frequency offset correction.Demodulated BLE signal.
051
Tom Verbeure @tomverbeure.bsky.social · 17/02/2026
The Stunning Efficiency and Beauty of the Polyphase Channelizer tomverbeure.github.io/2026/02/16/P...
Diagram of a single channel polyphase filter bankDiagram of a multi-channel polyphase filter bankSpectrum of a signal with multiple channelsSpectra of the individual channels at the exit of the channelizer
192
Tom Verbeure @tomverbeure.bsky.social · 08/02/2026
Complex Heterodynes Explained tomverbeure.github.io/2026/02/07/C...
Block diagram of the complex heterodyne with decimationSpectrum of real heterodyne before and afterSpectrum of complex heterodyne before and after
391
Tom Verbeure @tomverbeure.bsky.social · 26/01/2026
Notes about Basic Polyphase Decimation Filters tomverbeure.github.io/2026/01/25/N...
Block diagram of an FIR decimation filter split into 3 separate phases.
042
Reposted by Tom Verbeure
Hackaday @hackadayofficial.bsky.social · 07/01/2026
Repairing a Self-Destructing SRS DG535 Digital Delay Generator
hackaday.com
Repairing a Self-Destructing SRS DG535 Digital Delay Generator
Hackaday Article
711516
Tom Verbeure @tomverbeure.bsky.social · 25/12/2025
The Scenic Route to Repairing a Self-Destructing SRS DG535 Digital Delay Generator tomverbeure.github.io/2025/12/24/R...
SRS DG535 folded openLogic analyzer probes on Z80 of an SRS DG535Power schematic of SRS DG535SRS DG535 up and running with new LCD panel
050
Tom Verbeure @tomverbeure.bsky.social · 04/11/2025
Fixing LCD Screen Corruption of a Tektronix TDS220 Oscilloscope (and other fixes) tomverbeure.github.io/2025/11/03/T...
TDS220 screen showing horizontal band screen corruptionPCB inside LCD panelTDS220 screen showing probe compensation waveform that's definitely not right.TDS220 PSU PCB with arrows to places where there's fluid residue that shouldn't be there.
1100
Tom Verbeure @tomverbeure.bsky.social · 27/10/2025
Inside an Isotemp OCXO107-10 Oven Controlled Crystal Oscillator tomverbeure.github.io/2025/10/26/I...
Isotemp OXCO107-10 outside labelInside of the OCXO, showing a Dewar flash and internal electronics.Lab bench with oscilloscope, power supply, spectrum analyzer and OCXOSpectrum with harmonics
070
Reposted by Tom Verbeure
Cyber City Circuits @handle.invalid · 06/10/2025
My new article on Harold Black and the invention of the Negative Feedback Amplifier has just been posted. I start the story with the invention of the telephone in the 1870s, to a patent lawsuit in the 1940s. Check it out. Let me know what you think. emedia.digikey.com/eMagazine-Vo...
262
Reposted by Tom Verbeure
Sam Rose @samwho.dev · 01/10/2025
I'm writing about self-hosting and got wondering why ports <1024 are privileged on Linux, and require you to be root to bind to them. Found this explanation and couldn't help but laugh. I'd always thought it was a bit of a hack. utcc.utoronto.ca/~cks/space/b...
Based on the Unix versions available on tuhs.org, all of this appears to
have been introduced in 4.1c BSD. This is the version that adds
IPPORT_RESERVED to netinet/in.h and has the TCP/UDP port binding
code check it in in_pcbbind in netinet/in pcb.c. In case you think the
BSD people thought that this was an elegant idea, let me show you the
code:

if (lport) {
u_short aport = htons (lport) ;
int wild = 0;
/* GROSS */
if (aport < IPPORT_RESERVED && u.u_uid != 0) return (EACCES) ;
[...1

The BSD people knew this was a hack; they just did it anyway,
probably because it was a very handy hack in their trusted local
network environment. Unix has quietly inherited it ever since.
3525
Reposted by Tom Verbeure
Tod Kurt (todbot) @todbot.com · 30/09/2025
Want easy capsense touchpad buttons? Just a PCB & 4 resistors. Coming soon to my Tindie store! If you want to make your own, files are here: github.com/todbot/touch... This demo in CircuitPython but also works in Arduino w/ my TouchyTouch lib #circuitpython #capsense #captouch #raspberrypipico
0192
Reposted by Tom Verbeure
Elise Cutts @elisecutts.bsky.social · 24/09/2025
Cecilia Payne-Gaposchkin ✨ figured out what stars are made of ✨ when she was just 25. 🔭🧪 Her PhD thesis basically established the Harvard astro department — at a time when Harvard didn't officially allow woman students. I wrote this little profile to mark the 100th anniversary of her thesis:
sciencenews.org
How a Harvard maverick forever changed our concept of the stars
At just 25, Cecilia Payne-Gaposchkin applied quantum physics to a treasure trove of astronomical observations to show that stars are mostly hydrogen and helium.
221869863
Tom Verbeure @tomverbeure.bsky.social · 20/08/2025
Power Switch and Battery Replacement of an SR620 Universal Time Interval Counter tomverbeure.github.io/2025/08/19/S...
SR620 with analog oscilloscope on top of itSR620 with front panel removed
070
Reposted by Tom Verbeure
𝐔𝐧𝐛𝐥𝐨𝐜𝐤𝐚𝐛𝐥𝐞 𝐆𝐨𝐮𝐫𝐦𝐚𝐧𝐝 𝐂𝐫𝐚𝐛 @johnxuandou.bsky.social · 13/08/2025
This is one of the most beautiful things I have witnessed, the craft here is impeccable.
461222348469
Tom Verbeure @tomverbeure.bsky.social · 13/08/2025
I think AI hallucinated me into a paper about Modelling and Solving 2D Truss System! Something I know nothing about. A few days ago, I submitted a blog post to Hackaday. Today I googled my name to see if it had been picked up. Instead it found this weird hit. onlinelibrary.wiley.com/doi/10.1002/...
Screenshot of a google search that says: "Wiley Online Library
Python‐Powered Structural Analysis: Modeling and ...
3 days ago — It was developed by Tom Verbeure with the aim of making structural analysis available, insightful, and efficient for students, educators, and professionals."
150
Tom Verbeure @tomverbeure.bsky.social · 12/08/2025
The Video Timings Calculator is my most popular webpage in Google Search by far, with most of clicks coming from Taiwan. Those are engineers working on monitors, TVs, laptops etc. Traffic drops on Friday morning and ramps back up Sunday afternoon. It also drops the week of Lunar New Year.
Search traffic to video timings calculator. A red arrow points to the drop in traffic around Lunar New Year.
090
Tom Verbeure @tomverbeure.bsky.social · 12/08/2025
3 new features for my Video Timings Calculator: 1. 10K, 12K and 16K resolutions added. 2. HDMI 2.2 96/80/64 Gbps data rates added. 3. You can share timings by copy and pasting the URL. Thanks SnowSquire@github! Check it out here: tomverbeure.github.io/video_timing...
Drop-down with 16K, 12K and 10K resolutionsHDMI 2.2 link ratesURL with video timings settings
192
Tom Verbeure @tomverbeure.bsky.social · 10/08/2025
Repairing an HP 5370A Time Interval Counter tomverbeure.github.io/2025/08/10/H...
HP 5370A with open top showing a frequency of 9,999,999.999,25 MHzInternals of the HP 5370A seen from the topAnnotated schematic of the HP 5370A reference clock bufferWorkbench showing the reference clock bench PCB with probes, oscilloscope and laptop
1220
Tom Verbeure @tomverbeure.bsky.social · 04/08/2025
The SR620 time interval counter came to market around 1986, just before VGA was a thing. But analog oscilloscopes were everywhere, so it cleverly (ab)uses the XY mode to render images. It’s unusable on a digital scope, it’s readable on an analog one.
SR620 time interval counter with an oscilloscope on top of it. The scope shows a screen with frequency and other data. Zoomed in on the oscilloscope screen.
170
Tom Verbeure @tomverbeure.bsky.social · 28/07/2025
The HP 5370A time interval counter accepts an external clock of 5 MHz or 10 MHz to create a 10 MHz reference clock. The schematic is deceptively simple, but it's really interesting and I needed a Spice simulation to understand the basics: it's a cascade of 2 injection-locked oscillators (ILO).
Schematic of the 5 MHz/10 MHz to 10 MHz clock circuit of the HP 5370A. 3 10 MHz LC tanks are marked in red.
270
Tom Verbeure @tomverbeure.bsky.social · 23/07/2025
Digikey box arrived with components for 6 different projects. What I should have done earlier is fill in the “customer reference” field for each component with the project name. Makes it so much easier to sort through the pile. This baggie has a 450V cap for my TDS 220 recap.
Digikey bag. The customer reference field says “TDS 220 recap”.
140
Tom Verbeure @tomverbeure.bsky.social · 21/07/2025
HP 5370A repair: I had the short isolated to down to the components around 2 transistors, or so I thought. Soldered power supply and input wire for easy out of chassis debug. 
The thing works totally fine and creates a beautiful 10MHz ECL signal. Now what???
Workbench with laptop showing a schematic, an oscilloscope showing a square waveform and a sine wave, and a PCB with probes and wires.
240
Tom Verbeure @tomverbeure.bsky.social · 18/07/2025
There was (and is!) a short and a burnt capacitor on the clock reference board of my flea market HP 5370A counter. I was able to bypass the short with a bodge. After that, it works fine! The only thing not working yet is the circuit that was bypassed: the external reference clock input.
Reference frequency buffer PCB of an HP5370A. A red arrow points to a burnt capacitor.The reference frequency buffer PCB plugged into the chassis. There is a red bodge wire.The HP 5370A displaying a measured frequency of 9,999,999.9925 MHz.
080
Tom Verbeure @tomverbeure.bsky.social · 14/07/2025
The HP 5370A time interval counter was one of the first to use an MC6800 CPU. To make debugging easier, it has a service board that can send the MSB and LSB of the CPU address to 2 DACs, so that programming execution can be tracked on an oscilloscope in X/Y mode.
Screenshot with the following text highlighted: "There are also two DACs for displaying the lower eight bits of the addressbus on one axis of an ordinary oscilloscope and the upper eight bits on the other axis to provide a "map" presen- tation that, to someone familiar with it, gives an instant indication of the behavior of the instrument."
160
Reposted by Tom Verbeure
Cannonbreed (Alexander) @cannonbreed.bsky.social · 14/07/2025
www.youtube.com/watch?v=uhMC... I tried to make a convincing looking looking sopranos game
youtube.com
Sopranos Beat em' Up
YouTube video by Cannonbreed
44617
Tom Verbeure @tomverbeure.bsky.social · 13/07/2025
One of the flea market treasures is this heavy box that’s marked “Syntheziser”. No company or model name at all, but it must be HP, based on 1820-xxxx components inside. 5MHz in, 10 and 100 MHz out. After removing around 30 screws, you get to see this. Stunning.
Inside of a flea market clock synthesizer. Connectors of the synthesizer.
150
Tom Verbeure @tomverbeure.bsky.social · 13/07/2025
A shiny variac, a high precision HP 5370A time counter, a back-breaking, broken (“it worked 2 months ago!”) Fluke 6071A signal generator and a nondescript 10MHz/100MHz clock synthesizer, all for $80. ‘t Was another successful Silicon Valley electronics flea market, but being there at 6am is rough.
Variac, clock synthesizer, HP 5370A and Fluke 6071A stacked on top of each other in the trunk of my car.
040
Tom Verbeure @tomverbeure.bsky.social · 05/07/2025
This SR620 frequency counter is my best ever electronics flea market purchase. The manual has an earliest date of 1989, my unit has 1988 components in it. 37 years old. Excellent specs: SRS still sells this model, virtually unchanged! Mine generally works fine, except when it doesn't...
280
Reposted by Tom Verbeure
Catherine @whitequark.org · 28/06/2025
are you a platform/embedded developer? do you need to interact with hardware in a semi-custom manner? would you like to suffer a lot less doing it? if so, #GlasgowInterfaceExplorer might be for you. the code below is all you need to build a custom testbench:
async def main():
    assembly = HardwareAssembly()
    assembly.use_voltage({"A": 3.3, "B": 3.3})
    spi_rom_iface = Memory25xInterface(logger, assembly,
        cs="A0", sck="A1", io="A2:5")
    uart_iface = UARTInterface(logger, assembly,
        rx="B0", tx="B1")
    gpio_iface = GPIOInterface(logger, assembly,
        pins="B2")

    async with assembly:
        await spi_rom_iface.qspi.clock.set_frequency(1_000_000)
        await uart_iface.set_baud(115200)

        # Pretend to program the Flash.
        # (Actual production code would likely use `.erase_program(...)` here.)
        await gpio_iface.output(0, True)
        mfg_id, dev_id = await spi_rom_iface.read_manufacturer_long_device_id()
        print(f"flash ID: {mfg_id:02x},{dev_id:04x}")
        data = await spi_rom_iface.fast_read(0x1000, 0x10)
        print(f"program memory: {data.hex()}")

        # Talk to the SoC.
        await gpio_iface.output(0, False)
        await asyncio.sleep(10e-3)
        await uart_iface.write(b"INIT?")
        reply = await uart_iface.read(2)
        print(reply.hex()) # b"OK"
310417
Tom Verbeure @tomverbeure.bsky.social · 27/06/2025
Got myself a free wrench today!
A wrench sticking out of a tire.
3470
Tom Verbeure @tomverbeure.bsky.social · 22/06/2025
The view of Barcelona from Montjuic castle is nice, but the star of the show is the sea port container processing yard around the corner. I spent more than an hour looking at mesmerizing dance of straddle carriers moving containers from trucks to storage to ships. Made me want to play factorio.
View over sea port container processing yard. Cruise ships are in the background.
180
Tom Verbeure @tomverbeure.bsky.social · 18/06/2025
Hah, I have exactly the oscilloscope! … Wait a minute…
0110
Tom Verbeure @tomverbeure.bsky.social · 06/06/2025
I’m reading this highly scientific paper about the award winning SERV CPU by award winning @olofkindgren.bsky.social.
Screenshot of a paper. Caption under a picture says “Cole slaw. Not to be confused with Moore’s law”
060
Tom Verbeure @tomverbeure.bsky.social · 02/06/2025
Hurray! Weekend project complete and successful: DIP32 footprints installed after subjecting the PCB to hours of thermal torture and the scope still works! (Intermittently, but that’s why the operation was necessary to begin with…)
TDS 684C showing self-check PASS message. TDS 684C CPU board with DS1486 and DS1250 NVSRAM modules in a DIP32 socket.
050
Tom Verbeure @tomverbeure.bsky.social · 02/06/2025
I spent 3 hours with a cheap(!) Yihua 948 vacuum soldering station, hot air station, and various YouTube techniques trying to desolder a DIP32. No success until I figured out the right technique with the SS-02 Solder Sucker. The second DIP32 was out 10min.
PCB with two dead bug DIP32 components and an Engineer SS-02 Solder Sucker.
8280
Tom Verbeure @tomverbeure.bsky.social · 31/05/2025
Great… ☹️
2 male RS-232 connectors that were supposed to be plugged into each other.
151
Tom Verbeure @tomverbeure.bsky.social · 30/05/2025
Not the first time that I say this, but for those in the back: Tektronix logic analyzer grabbers are fantastic. (And cheap on eBay!) Don’t torture yourself with the inferior crap that comes with Saleae, DSLogic and even some HP logic analyzers. tomverbeure.github.io/2025/04/12/D...
Electronics PCB with a rats nest of probe wires that end with a Tektronix logic analyzer probe clip. A laptop shows waveforms. In the back, there’s the bottom of an oscilloscope.
0110
Tom Verbeure @tomverbeure.bsky.social · 26/05/2025
Testing if an RP2040 is fast enough to emulate a device with 120ns asynchronous bus (e.g. a 128KB SRAM.) Worst case, with a 200MHz CPU clock, the rp2040 needs 50ns to toggle a GPIO when it sees a rising edge input. It might be doable. The rp2040 is just too cheap to ignore.
Oscilloscope waveform, showing a rising edge pulse and 4 pulses that react to the rising edge pulse.
1190
Reposted by Tom Verbeure
tommyjones.bsky.social @tommyjones.bsky.social · 01/05/2025
My new (3d printed) toroid winding tool works great! Now I no longer have to count, my fingers don’t get muscle cramps and they look tidy.
3d printed toroid winding tool
1114822
Tom Verbeure @tomverbeure.bsky.social · 19/05/2025
The loot from today’s electronics flea market. I thought one 12GHz frequency divider was cool, but the seller only wanted to sell the 3 of them because “only one works and I don’t know which one.” So that’s a lot of extra volume in my garage. The totally working TDS 220 scope was $25 !!!
3 HP 5260A frequency dividers and 1 TDS 220 oscilloscope.
2160
Tom Verbeure @tomverbeure.bsky.social · 18/05/2025
How can you owns such a beautiful piece of art oscilloscope and *not* clean it until looks brand new again?
Front panel of a Tektronix TDS 754D oscilloscope, a bottle of isopropyl alcohol and fingers holding a cotton swab cleaning one of the buttons.
2321
Reposted by Tom Verbeure
Catherine @whitequark.org · 17/05/2025
#GlasgowInterfaceExplorer now has a high-performance SPI analyzer! it runs at up to 100 MHz (with some caveats) as an example, I wrote this tiny script that extracts data from SD card SPI transactions and lets me reconstruct an image file that an embedded device is reading
source code for a script that captures COPI/CIPO from the SPI analyzer and then crudely dissects it, implementing only a few commands from the SD card SPI protocolconsole output from the script on the previous image, showing some command tokens (CMD17, CMD18, CMD12) as well as data, overlaid with an image editor displaying a colorful bitmap saying "gay"
2617
Reposted by Tom Verbeure
Hackaday @hackadayofficial.bsky.social · 09/05/2025
Oscilloscope Digital Storage, 1990s Style hackaday.com/2025/05/09/oscilloscop…
hackaday.com
Oscilloscope Digital Storage, 1990s Style
Hackaday Article
021
Tom Verbeure @tomverbeure.bsky.social · 09/05/2025
Brightness and Contrast Adjustment of Tektronix TDS 500/600/700 Oscilloscopes This is really simple, but I was *this close* to buying an LCD panel upgrade kit, so maybe it will help someone else one day. tomverbeure.github.io/2025/05/08/A...
TDS684C with bright CRTHoles for adjustment potentiometer covered with dustAnnotated adjustment potentiometers
274
Tom Verbeure @tomverbeure.bsky.social · 07/05/2025
I bought 4 loot bags at Anchor Electronics with Digikey and Mouser baggies and some SMD spools too and sorted them tonight. From left to right: resistors, resistors, capacitors, everything else. 3 of those 4 bags will soon end up at the SV electronics flea market for very, very cheap.
4 plastic bags with components against the wall.
130