<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>Comments on: Probing Ethernet cable with an oscilloscope</title>
	<atom:link href="http://www.epanorama.net/blog/2017/07/16/probing-ethernet-cable-with-an-oscilloscope/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.epanorama.net/blog/2017/07/16/probing-ethernet-cable-with-an-oscilloscope/</link>
	<description>All about electronics and circuit design</description>
	<lastBuildDate>Tue, 07 Apr 2026 11:23:26 +0000</lastBuildDate>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.9.14</generator>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/07/16/probing-ethernet-cable-with-an-oscilloscope/comment-page-1/#comment-1777046</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Mon, 15 Aug 2022 09:00:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=57402#comment-1777046</guid>
		<description><![CDATA[What’s That Scope Trace Saying? UPD And Wireshark
https://hackaday.com/2022/08/14/whats-that-scope-trace-saying-upd-and-wireshark/

[Matt Keeter], like many of us, has a lot of network-connected devices and an oscilloscope. He decided he wanted to look into what was on the network. While most of us might reach for Wireshark, he started at the PCB level. In particular, he had — or, rather, had someone — solder an active differential probe soldered into an Ethernet switch. The scope attached is a Textronix, but it didn’t have the analyzer to read network data. However, he was able to capture 190+ MB of data and wrote a simple parser to analyze the network data pulled from the switch.

The point of probing is between a network switch and the PHY that expands one encoded channel into four physical connections using QSGMII (quad serial gigabit media-independent interface). As the name implies, this jams four SGMII channels onto one pair.

From Oscilloscope to Wireshark: A UDP Story
https://www.mattkeeter.com/blog/2022-08-11-udp/

Like many of you, I’ve got hardware on my desk that’s sending UDP packets, and the time has come to take a closer look at them.

Most “low-level” networking tutorials will bottom out somewhere at “use tcpdump to see raw packets”. We’ll be starting a bit lower in the stack; specifically, here

This is a high-speed active differential probe soldered to an Oxide Computer Company rack switch. We’re going all the way down to the metal.

The oscilloscope doesn’t have a built-in QSGMII analyzer (and we’ll want to do fairly sophisticated processing of the data), so I wanted to export waveform data to my computer.

How much data should I capture? Analog waveforms can easily add up to multiple gigabytes, so I’d like to capture a small amount while still catching a packet or two.

I knew that a device on the network was emitting about 30K UDP packets per second, or one packet every 33 µs. I configured the oscilloscope to collect 100M samples at 1 TSPS (tera-sample per second, 1012), which multiplies out to 100 µs of data; this means we should catch 1-3 UDP packets.

After hunting down a USB key, I ended up with a 191M .wfm file to process.

We know our sample rate (1 TPSP) and the nominal QSGMII bit rate (5 GHz); this means that a single-bit pulse (e.g. 010) should be a 200-sample pulse. In turn, we expect a comma character to be roughly 1000 samples long (200 × 5).

The oscilloscope and switch may not have exactly the same clock rate. If we go a long time between comma characters, we may end up sampling at the wrong position in the waveform!

It turns out that we need to synchronize in two places:

Comma characters tell us when a new code-group starts
Bit transitions help us keep the clock in sync

Storing and analyzing packets

Decoding ethernet frames with our eyes gets old fast.

Luckily, there are lots of good tools for working with frame data. Using the pcap library, we can write out a .pcap file to be analyzed with Wireshark.

Here’s our full analyzer, going from .wfm to four .pcap files

The whole pipeline – from loading the .wfm to writing the .pcap file – runs in about 410 milliseconds on my computer. Considering I put no effort into optimization, this isn’t too bad!

Using tshark, we can confirm that these are UDP packets:]]></description>
		<content:encoded><![CDATA[<p>What’s That Scope Trace Saying? UPD And Wireshark<br />
<a href="https://hackaday.com/2022/08/14/whats-that-scope-trace-saying-upd-and-wireshark/" rel="nofollow">https://hackaday.com/2022/08/14/whats-that-scope-trace-saying-upd-and-wireshark/</a></p>
<p>[Matt Keeter], like many of us, has a lot of network-connected devices and an oscilloscope. He decided he wanted to look into what was on the network. While most of us might reach for Wireshark, he started at the PCB level. In particular, he had — or, rather, had someone — solder an active differential probe soldered into an Ethernet switch. The scope attached is a Textronix, but it didn’t have the analyzer to read network data. However, he was able to capture 190+ MB of data and wrote a simple parser to analyze the network data pulled from the switch.</p>
<p>The point of probing is between a network switch and the PHY that expands one encoded channel into four physical connections using QSGMII (quad serial gigabit media-independent interface). As the name implies, this jams four SGMII channels onto one pair.</p>
<p>From Oscilloscope to Wireshark: A UDP Story<br />
<a href="https://www.mattkeeter.com/blog/2022-08-11-udp/" rel="nofollow">https://www.mattkeeter.com/blog/2022-08-11-udp/</a></p>
<p>Like many of you, I’ve got hardware on my desk that’s sending UDP packets, and the time has come to take a closer look at them.</p>
<p>Most “low-level” networking tutorials will bottom out somewhere at “use tcpdump to see raw packets”. We’ll be starting a bit lower in the stack; specifically, here</p>
<p>This is a high-speed active differential probe soldered to an Oxide Computer Company rack switch. We’re going all the way down to the metal.</p>
<p>The oscilloscope doesn’t have a built-in QSGMII analyzer (and we’ll want to do fairly sophisticated processing of the data), so I wanted to export waveform data to my computer.</p>
<p>How much data should I capture? Analog waveforms can easily add up to multiple gigabytes, so I’d like to capture a small amount while still catching a packet or two.</p>
<p>I knew that a device on the network was emitting about 30K UDP packets per second, or one packet every 33 µs. I configured the oscilloscope to collect 100M samples at 1 TSPS (tera-sample per second, 1012), which multiplies out to 100 µs of data; this means we should catch 1-3 UDP packets.</p>
<p>After hunting down a USB key, I ended up with a 191M .wfm file to process.</p>
<p>We know our sample rate (1 TPSP) and the nominal QSGMII bit rate (5 GHz); this means that a single-bit pulse (e.g. 010) should be a 200-sample pulse. In turn, we expect a comma character to be roughly 1000 samples long (200 × 5).</p>
<p>The oscilloscope and switch may not have exactly the same clock rate. If we go a long time between comma characters, we may end up sampling at the wrong position in the waveform!</p>
<p>It turns out that we need to synchronize in two places:</p>
<p>Comma characters tell us when a new code-group starts<br />
Bit transitions help us keep the clock in sync</p>
<p>Storing and analyzing packets</p>
<p>Decoding ethernet frames with our eyes gets old fast.</p>
<p>Luckily, there are lots of good tools for working with frame data. Using the pcap library, we can write out a .pcap file to be analyzed with Wireshark.</p>
<p>Here’s our full analyzer, going from .wfm to four .pcap files</p>
<p>The whole pipeline – from loading the .wfm to writing the .pcap file – runs in about 410 milliseconds on my computer. Considering I put no effort into optimization, this isn’t too bad!</p>
<p>Using tshark, we can confirm that these are UDP packets:</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/07/16/probing-ethernet-cable-with-an-oscilloscope/comment-page-1/#comment-1649466</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Wed, 28 Aug 2019 16:22:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=57402#comment-1649466</guid>
		<description><![CDATA[Analyzing actual Ethernet encoding &#124; Networking tutorial (4 of 13)
https://m.youtube.com/watch?v=i8CmibhvZ0c

In this video, we hook an oscilloscope up to an Ethernet link to see what&#039;s going on.]]></description>
		<content:encoded><![CDATA[<p>Analyzing actual Ethernet encoding | Networking tutorial (4 of 13)<br />
<a href="https://m.youtube.com/watch?v=i8CmibhvZ0c" rel="nofollow">https://m.youtube.com/watch?v=i8CmibhvZ0c</a></p>
<p>In this video, we hook an oscilloscope up to an Ethernet link to see what&#8217;s going on.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/07/16/probing-ethernet-cable-with-an-oscilloscope/comment-page-1/#comment-1620896</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Mon, 14 Jan 2019 11:58:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=57402#comment-1620896</guid>
		<description><![CDATA[Cheap ethernet decoding on a mixed-signal scope
https://www.youtube.com/watch?v=SYnO9CsTEqQ]]></description>
		<content:encoded><![CDATA[<p>Cheap ethernet decoding on a mixed-signal scope<br />
<a href="https://www.youtube.com/watch?v=SYnO9CsTEqQ" rel="nofollow">https://www.youtube.com/watch?v=SYnO9CsTEqQ</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>
