<?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: DIY optical power meter with SFP module and Arduino idea</title>
	<atom:link href="http://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/</link>
	<description>All about electronics and circuit design</description>
	<lastBuildDate>Sun, 12 Apr 2026 15:02:15 +0000</lastBuildDate>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.9.14</generator>
	<item>
		<title>By: Hari</title>
		<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/comment-page-1/#comment-1845027</link>
		<dc:creator><![CDATA[Hari]]></dc:creator>
		<pubDate>Thu, 30 Jan 2025 12:14:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=59337#comment-1845027</guid>
		<description><![CDATA[Splitter Loss Calculator]]></description>
		<content:encoded><![CDATA[<p>Splitter Loss Calculator</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/comment-page-1/#comment-1798800</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 10:18:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=59337#comment-1798800</guid>
		<description><![CDATA[http://fi.opticalpatchcable.com/info/what-is-sfp-transceiver-37082234.html]]></description>
		<content:encoded><![CDATA[<p><a href="http://fi.opticalpatchcable.com/info/what-is-sfp-transceiver-37082234.html" rel="nofollow">http://fi.opticalpatchcable.com/info/what-is-sfp-transceiver-37082234.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/comment-page-1/#comment-1798799</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 10:17:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=59337#comment-1798799</guid>
		<description><![CDATA[https://www.verkkokauppa.com/fi/catalog/1160c/Moduulit]]></description>
		<content:encoded><![CDATA[<p><a href="https://www.verkkokauppa.com/fi/catalog/1160c/Moduulit" rel="nofollow">https://www.verkkokauppa.com/fi/catalog/1160c/Moduulit</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/comment-page-1/#comment-1798798</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 10:16:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=59337#comment-1798798</guid>
		<description><![CDATA[https://www.partco.fi/fi/2228-sfp-transceiverit]]></description>
		<content:encoded><![CDATA[<p><a href="https://www.partco.fi/fi/2228-sfp-transceiverit" rel="nofollow">https://www.partco.fi/fi/2228-sfp-transceiverit</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/comment-page-1/#comment-1798797</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 10:15:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=59337#comment-1798797</guid>
		<description><![CDATA[TE Connectivity SFP Connector Female 20-Position, 1367073-1
https://fi.rsdelivers.com/product/te-connectivity/1367073-1/te-connectivity-sfp-connector-female-20-position-1/6809718?cm_mmc=FI-PLA-DS3A-_-google-_-PLA_FI_FI_Connectors_Whoop-_-(FI:Whoop!)+Pluggable+I/O+Connectors-_-PRODUCT_GROUP&amp;matchtype=&amp;aud-827186183886:pla-476981918544&amp;s_kwcid=AL!14853!3!598320122796!!!g!476981918544!&amp;gclid=EAIaIQobChMIxprBzObx_QIVKQWiAx0viAvAEAQYAiABEgJS2vD_BwE&amp;gclsrc=aw.ds]]></description>
		<content:encoded><![CDATA[<p>TE Connectivity SFP Connector Female 20-Position, 1367073-1<br />
<a href="https://fi.rsdelivers.com/product/te-connectivity/1367073-1/te-connectivity-sfp-connector-female-20-position-1/6809718?cm_mmc=FI-PLA-DS3A-_-google-_-PLA_FI_FI_Connectors_Whoop-_-(FI:Whoop" rel="nofollow">https://fi.rsdelivers.com/product/te-connectivity/1367073-1/te-connectivity-sfp-connector-female-20-position-1/6809718?cm_mmc=FI-PLA-DS3A-_-google-_-PLA_FI_FI_Connectors_Whoop-_-(FI:Whoop</a>!)+Pluggable+I/O+Connectors-_-PRODUCT_GROUP&amp;matchtype=&amp;aud-827186183886:pla-476981918544&amp;s_kwcid=AL!14853!3!598320122796!!!g!476981918544!&amp;gclid=EAIaIQobChMIxprBzObx_QIVKQWiAx0viAvAEAQYAiABEgJS2vD_BwE&amp;gclsrc=aw.ds</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/comment-page-1/#comment-1798796</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 10:14:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=59337#comment-1798796</guid>
		<description><![CDATA[https://fibconet.com/fi/sfp-module-whats-it-and-how-to-choose-it/]]></description>
		<content:encoded><![CDATA[<p><a href="https://fibconet.com/fi/sfp-module-whats-it-and-how-to-choose-it/" rel="nofollow">https://fibconet.com/fi/sfp-module-whats-it-and-how-to-choose-it/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/comment-page-1/#comment-1798795</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 10:13:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=59337#comment-1798795</guid>
		<description><![CDATA[Phase-2# Hello SFP from Arduino
https://hackaday.io/project/21599-optical-power-meter-with-sfp-and-ddm-protocol/log/58579-phase-2-hello-sfp-from-arduino

The first trial is using existing Lib for DDM interfacing. But there is not much such library and the only one in my eye is SloMusti, Arduino library for interfacing SFP modules and reading DDM.

https://github.com/SloMusti/sfpddm

Unluckily, lib is not work in the first try. SloMusti Github page said that “For communication the specified I2C library is internally initialized, the default Arduino I2C library is not reliable enough and can not be used. Please obtain and install the I2C library by Wayne Truchsess http://dsscircuits.com/articles/arduino-i2c-master-library.html”.

Anwyaw, SloMusti Lib is very informative and structurally formatted and it help me alot how to do things.

So, I try to write my own I2C code snaps with Arduino building lib and it worked. So, I developed by own SFPDDM Lib from scratch. My idea is keep it simple and forward. The first step is to read raw data format from SFP/DDM registers (96-117). These reg are used for monitoring, alarm, control and debugging. Each function of these register and explanations are worth to read from Finisar Application note.

https://www.finisar.com/sites/default/files/downloads/an-2030_digital_diagnostic_monitoring_interface_sfp_optical_transceivers.pdf

Connection pin outs  Arduino UNO are as follow. Be sure to use 5V-3.3V level shifter board.

VeeTs - GND

VeeRs - GND

VccRs - 3.3V

VccTs - 3.3V

MOD-DEF(2) - SDA (4)

MOD-DEF(2) - SDA (5)

MOD-DEF(2) - GND

Then, I tried to read reg(96) with normal I2C Lib (Arduino buildin) and print it out to UART. Then, phrase and formatted.

The first trial output, output from reading DDM register. Look promising.

https://github.com/SloMusti/sfpddm]]></description>
		<content:encoded><![CDATA[<p>Phase-2# Hello SFP from Arduino<br />
<a href="https://hackaday.io/project/21599-optical-power-meter-with-sfp-and-ddm-protocol/log/58579-phase-2-hello-sfp-from-arduino" rel="nofollow">https://hackaday.io/project/21599-optical-power-meter-with-sfp-and-ddm-protocol/log/58579-phase-2-hello-sfp-from-arduino</a></p>
<p>The first trial is using existing Lib for DDM interfacing. But there is not much such library and the only one in my eye is SloMusti, Arduino library for interfacing SFP modules and reading DDM.</p>
<p><a href="https://github.com/SloMusti/sfpddm" rel="nofollow">https://github.com/SloMusti/sfpddm</a></p>
<p>Unluckily, lib is not work in the first try. SloMusti Github page said that “For communication the specified I2C library is internally initialized, the default Arduino I2C library is not reliable enough and can not be used. Please obtain and install the I2C library by Wayne Truchsess <a href="http://dsscircuits.com/articles/arduino-i2c-master-library.html”" rel="nofollow">http://dsscircuits.com/articles/arduino-i2c-master-library.html”</a>.</p>
<p>Anwyaw, SloMusti Lib is very informative and structurally formatted and it help me alot how to do things.</p>
<p>So, I try to write my own I2C code snaps with Arduino building lib and it worked. So, I developed by own SFPDDM Lib from scratch. My idea is keep it simple and forward. The first step is to read raw data format from SFP/DDM registers (96-117). These reg are used for monitoring, alarm, control and debugging. Each function of these register and explanations are worth to read from Finisar Application note.</p>
<p><a href="https://www.finisar.com/sites/default/files/downloads/an-2030_digital_diagnostic_monitoring_interface_sfp_optical_transceivers.pdf" rel="nofollow">https://www.finisar.com/sites/default/files/downloads/an-2030_digital_diagnostic_monitoring_interface_sfp_optical_transceivers.pdf</a></p>
<p>Connection pin outs  Arduino UNO are as follow. Be sure to use 5V-3.3V level shifter board.</p>
<p>VeeTs &#8211; GND</p>
<p>VeeRs &#8211; GND</p>
<p>VccRs &#8211; 3.3V</p>
<p>VccTs &#8211; 3.3V</p>
<p>MOD-DEF(2) &#8211; SDA (4)</p>
<p>MOD-DEF(2) &#8211; SDA (5)</p>
<p>MOD-DEF(2) &#8211; GND</p>
<p>Then, I tried to read reg(96) with normal I2C Lib (Arduino buildin) and print it out to UART. Then, phrase and formatted.</p>
<p>The first trial output, output from reading DDM register. Look promising.</p>
<p><a href="https://github.com/SloMusti/sfpddm" rel="nofollow">https://github.com/SloMusti/sfpddm</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/comment-page-1/#comment-1798794</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 10:12:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=59337#comment-1798794</guid>
		<description><![CDATA[Arduino Uno as portable SFP DDM/DOM reader?
https://forum.arduino.cc/t/arduino-uno-as-portable-sfp-ddm-dom-reader/151495

Hello forum members!
I will try to connect a SFP to a Arduino Uno to be able to read out the SFP DDM/DOM information from a SFP.

I have read about the sfpddm project by SloMusti (GitHub - SloMusti/sfpddm: Arduino library for interfacing SFP modules and reading DDM information as per SFF-8472 22) but I want to be able to power the SFP module without the converter. After reading the pinout (Small Form-factor Pluggable - Wikipedia 3) I does not look impossible to make it work. Anybody with experience how want to share?

First problem is to power the SFP, which pins need power? I only need the reciever part to work.


I would guess that providing 3.3V power on pin 15 &quot;VccR: Receiver power (3.3 v)&quot; and Ground on pins 9, 10, 11, and 14 &quot;VeeR: Receiver ground&quot; would power the receiver.



sfpddm
https://github.com/SloMusti/sfpddm

Arduino library for interfacing SFP modules and reading DDM information as per SFF-8472. The library is following the standard but is not yet fully compliant, some additional rarely used functions need to be implemented for that.

How it works

The library offers functions that return measurements in the form specified by the standerd. Handles the externally callibrated data as well, performs the necessary calculations and outputs the results as if they were internaly calibrated.

For communication the specified I2C library is internally initialized, the default Arduino I2C library is not reliable enough and can not be used. Please obtain and install the I2C library by Wayne Truchsess http://dsscircuits.com/articles/arduino-i2c-master-library.html

Modification of TP-Link MC220L for accessing SFP management bus (I2C)

TP-Link MC220L media converter is an Ethernet to SFP converter for use with SFP fibre or copper modules for either 100Mbps or 1Gbps Ethernet communication and can be modified, allowing a connection of an external device sucha as an Arduino to the I2C SFP management bus.

SFP module 4 and 5 pins are used for I2C communication and can be located on the bottom side of the PCB. There is an array of resistor footprints, most of them unpopulated. Left (orientation normal to the solder mask) resistor pads of footprints R57-SCL and R55-SDA. SFP power supply decoupling and filtering section is located on the top side of the PCB, to the right of the SFP cage. For best noise performance and decoupling of additional circuitry, 3.3V power must be taken from the mid point between the two inductors with markings IR0. Ground should be taken from the capacitor pads C58 of C57.]]></description>
		<content:encoded><![CDATA[<p>Arduino Uno as portable SFP DDM/DOM reader?<br />
<a href="https://forum.arduino.cc/t/arduino-uno-as-portable-sfp-ddm-dom-reader/151495" rel="nofollow">https://forum.arduino.cc/t/arduino-uno-as-portable-sfp-ddm-dom-reader/151495</a></p>
<p>Hello forum members!<br />
I will try to connect a SFP to a Arduino Uno to be able to read out the SFP DDM/DOM information from a SFP.</p>
<p>I have read about the sfpddm project by SloMusti (GitHub &#8211; SloMusti/sfpddm: Arduino library for interfacing SFP modules and reading DDM information as per SFF-8472 22) but I want to be able to power the SFP module without the converter. After reading the pinout (Small Form-factor Pluggable &#8211; Wikipedia 3) I does not look impossible to make it work. Anybody with experience how want to share?</p>
<p>First problem is to power the SFP, which pins need power? I only need the reciever part to work.</p>
<p>I would guess that providing 3.3V power on pin 15 &#8220;VccR: Receiver power (3.3 v)&#8221; and Ground on pins 9, 10, 11, and 14 &#8220;VeeR: Receiver ground&#8221; would power the receiver.</p>
<p>sfpddm<br />
<a href="https://github.com/SloMusti/sfpddm" rel="nofollow">https://github.com/SloMusti/sfpddm</a></p>
<p>Arduino library for interfacing SFP modules and reading DDM information as per SFF-8472. The library is following the standard but is not yet fully compliant, some additional rarely used functions need to be implemented for that.</p>
<p>How it works</p>
<p>The library offers functions that return measurements in the form specified by the standerd. Handles the externally callibrated data as well, performs the necessary calculations and outputs the results as if they were internaly calibrated.</p>
<p>For communication the specified I2C library is internally initialized, the default Arduino I2C library is not reliable enough and can not be used. Please obtain and install the I2C library by Wayne Truchsess <a href="http://dsscircuits.com/articles/arduino-i2c-master-library.html" rel="nofollow">http://dsscircuits.com/articles/arduino-i2c-master-library.html</a></p>
<p>Modification of TP-Link MC220L for accessing SFP management bus (I2C)</p>
<p>TP-Link MC220L media converter is an Ethernet to SFP converter for use with SFP fibre or copper modules for either 100Mbps or 1Gbps Ethernet communication and can be modified, allowing a connection of an external device sucha as an Arduino to the I2C SFP management bus.</p>
<p>SFP module 4 and 5 pins are used for I2C communication and can be located on the bottom side of the PCB. There is an array of resistor footprints, most of them unpopulated. Left (orientation normal to the solder mask) resistor pads of footprints R57-SCL and R55-SDA. SFP power supply decoupling and filtering section is located on the top side of the PCB, to the right of the SFP cage. For best noise performance and decoupling of additional circuitry, 3.3V power must be taken from the mid point between the two inductors with markings IR0. Ground should be taken from the capacitor pads C58 of C57.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/comment-page-1/#comment-1798792</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 10:09:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=59337#comment-1798792</guid>
		<description><![CDATA[Experiment With SFP Modules With This Handy Breakout
https://hackaday.com/2021/02/13/experiment-with-sfp-modules-with-this-handy-breakout/

While most home networking hardware comes with network ports baked in from the factory, industrial grade gear is typically more versatile. Using standards like Small Form-factor Pluggable, or SFP, network switches can be used with a variety of transport mediums by simply swapping tranceivers in and out. These network devices typically handle the nitty gritty of transmitting Ethernet over fiber optics, and for those keen to experiment, this breakout may come in handy.

The board design comes complete with an SFP receptacle, allowing a variety of compatible receivers to be plugged in for experimentation. With the standard using differential signalling, the board carries hardware to allow the transceiver to be fed with single-ended signals instead, though a differential version is available too. The board can be used for transmitting different signals over fiber, outside just Ethernet, or used as a simple way to reprogram SFP modules via I2C. The latter can be useful to get around DRM in network switches that attempt to lock out generic transceiver modules.

https://osmocom.org/projects/misc-hardware/wiki/Sfp-experimenter

The Osmocom SFP experimenter board a small circuit board for experiments with (usually fiber optical) transceivers in SFP form factor.
You can use it for e.g.

    transmitting your own signals / waveforms (not restricted to Ethernet or CPRI) over fiber optics. This is e.g. useful if you need galvanic isolation between digital circuits, or need long-distance transmission
    attach some I2C adapter to the I2C pins of the SFP module in order to re-program it
    The SFP transceivers exhibit a symmetric/differencial interface for Rx and Tx. The sfp-experimenter board contains an on-board differential transmitter and receiver so you can transmit/receive normal single-ended signals.

If you&#039;re interested in transmitting differential signals, please see the sfp-breakout board instead. It&#039;s like the SFP experimenter board, but contains no differential transmitter + receivers.

https://gitea.osmocom.org/electronics/osmo-small-hardware/src/branch/master/sfp-breakout

https://gitea.osmocom.org/electronics/osmo-small-hardware/src/branch/master/sfp-breakout/sfp-breakout.pdf

https://gitea.osmocom.org/electronics/osmo-small-hardware/src/branch/master/sfp-breakout/sfp-experimenter.pdf]]></description>
		<content:encoded><![CDATA[<p>Experiment With SFP Modules With This Handy Breakout<br />
<a href="https://hackaday.com/2021/02/13/experiment-with-sfp-modules-with-this-handy-breakout/" rel="nofollow">https://hackaday.com/2021/02/13/experiment-with-sfp-modules-with-this-handy-breakout/</a></p>
<p>While most home networking hardware comes with network ports baked in from the factory, industrial grade gear is typically more versatile. Using standards like Small Form-factor Pluggable, or SFP, network switches can be used with a variety of transport mediums by simply swapping tranceivers in and out. These network devices typically handle the nitty gritty of transmitting Ethernet over fiber optics, and for those keen to experiment, this breakout may come in handy.</p>
<p>The board design comes complete with an SFP receptacle, allowing a variety of compatible receivers to be plugged in for experimentation. With the standard using differential signalling, the board carries hardware to allow the transceiver to be fed with single-ended signals instead, though a differential version is available too. The board can be used for transmitting different signals over fiber, outside just Ethernet, or used as a simple way to reprogram SFP modules via I2C. The latter can be useful to get around DRM in network switches that attempt to lock out generic transceiver modules.</p>
<p><a href="https://osmocom.org/projects/misc-hardware/wiki/Sfp-experimenter" rel="nofollow">https://osmocom.org/projects/misc-hardware/wiki/Sfp-experimenter</a></p>
<p>The Osmocom SFP experimenter board a small circuit board for experiments with (usually fiber optical) transceivers in SFP form factor.<br />
You can use it for e.g.</p>
<p>    transmitting your own signals / waveforms (not restricted to Ethernet or CPRI) over fiber optics. This is e.g. useful if you need galvanic isolation between digital circuits, or need long-distance transmission<br />
    attach some I2C adapter to the I2C pins of the SFP module in order to re-program it<br />
    The SFP transceivers exhibit a symmetric/differencial interface for Rx and Tx. The sfp-experimenter board contains an on-board differential transmitter and receiver so you can transmit/receive normal single-ended signals.</p>
<p>If you&#8217;re interested in transmitting differential signals, please see the sfp-breakout board instead. It&#8217;s like the SFP experimenter board, but contains no differential transmitter + receivers.</p>
<p><a href="https://gitea.osmocom.org/electronics/osmo-small-hardware/src/branch/master/sfp-breakout" rel="nofollow">https://gitea.osmocom.org/electronics/osmo-small-hardware/src/branch/master/sfp-breakout</a></p>
<p><a href="https://gitea.osmocom.org/electronics/osmo-small-hardware/src/branch/master/sfp-breakout/sfp-breakout.pdf" rel="nofollow">https://gitea.osmocom.org/electronics/osmo-small-hardware/src/branch/master/sfp-breakout/sfp-breakout.pdf</a></p>
<p><a href="https://gitea.osmocom.org/electronics/osmo-small-hardware/src/branch/master/sfp-breakout/sfp-experimenter.pdf" rel="nofollow">https://gitea.osmocom.org/electronics/osmo-small-hardware/src/branch/master/sfp-breakout/sfp-experimenter.pdf</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2017/09/15/diy-optical-power-meter-with-sfp-module-and-arduino-idea/comment-page-1/#comment-1798791</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 10:06:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=59337#comment-1798791</guid>
		<description><![CDATA[Using SFP modules from a microcontroller
https://electronics.stackexchange.com/questions/393416/using-sfp-modules-from-a-microcontroller

Looking at what&#039;s in the SFP modules, it may not be all that difficult to use them directly.

Since the signals are AC coupled to LVDS, you&#039;ll need to communicate in a DC balanced protocol such as Manchester, which your chosen ARM may or may not support (my current favorite Microchip SAME70 does support it). And, of course, add LVDS receiver/transmitters. You may be able to ignore the EEPROM since you only want to work with a single type of SFP module.

Judging by the values shown, you&#039;d probably have to keep the frequency at 10MHz or higher, which you will need to do anyway for that data rate. 



SFP Transceivers use high speed differential pairs for transmit/receive on the host side. These generally start at data rates of 1Gbps and go up from there, so they&#039;re not trivial to implement and can&#039;t just be plugged into an MCU like the STM32F4--such MCUs simply don&#039;t have the physical interface for it. It&#039;s really the domain of Ethernet switch ASICs and FPGAs.

If you switch to an MCU that includes an Ethernet MAC (there are several options in the STM32F4 family), you could use a conventional PHY with an optical transceiver. TI has a dev board that shows this approach using their TLK105L PHY and a Broadcom AFBR-5803Z Optical transceiver. It appears that design materials are available, but I haven&#039;t looked at them. Here&#039;s the overview document for the dev board: http://www.ti.com/lit/ug/tidu366/tidu366.pdf. This should not be any more difficult to implement than a regular copper Ethernet interface, which means it still requires a good deal of care, but will be less challenging than a 1G+ SERDES. The downside is that from a quick look at the datasheets this solution will consume nearly 1W, so it likely won&#039;t meet your power budget even accounting for the fact that your data rate will be relatively low.

If you want an even simpler option, there are other fiber transceivers beyond TOSLINK ones. Broadcom and Avago would be key brands to look at, but just browsing Mouser&#039;s Fiber Optic Transceiver category brings up several promising options in the 50-100Mbd range.]]></description>
		<content:encoded><![CDATA[<p>Using SFP modules from a microcontroller<br />
<a href="https://electronics.stackexchange.com/questions/393416/using-sfp-modules-from-a-microcontroller" rel="nofollow">https://electronics.stackexchange.com/questions/393416/using-sfp-modules-from-a-microcontroller</a></p>
<p>Looking at what&#8217;s in the SFP modules, it may not be all that difficult to use them directly.</p>
<p>Since the signals are AC coupled to LVDS, you&#8217;ll need to communicate in a DC balanced protocol such as Manchester, which your chosen ARM may or may not support (my current favorite Microchip SAME70 does support it). And, of course, add LVDS receiver/transmitters. You may be able to ignore the EEPROM since you only want to work with a single type of SFP module.</p>
<p>Judging by the values shown, you&#8217;d probably have to keep the frequency at 10MHz or higher, which you will need to do anyway for that data rate. </p>
<p>SFP Transceivers use high speed differential pairs for transmit/receive on the host side. These generally start at data rates of 1Gbps and go up from there, so they&#8217;re not trivial to implement and can&#8217;t just be plugged into an MCU like the STM32F4&#8211;such MCUs simply don&#8217;t have the physical interface for it. It&#8217;s really the domain of Ethernet switch ASICs and FPGAs.</p>
<p>If you switch to an MCU that includes an Ethernet MAC (there are several options in the STM32F4 family), you could use a conventional PHY with an optical transceiver. TI has a dev board that shows this approach using their TLK105L PHY and a Broadcom AFBR-5803Z Optical transceiver. It appears that design materials are available, but I haven&#8217;t looked at them. Here&#8217;s the overview document for the dev board: <a href="http://www.ti.com/lit/ug/tidu366/tidu366.pdf" rel="nofollow">http://www.ti.com/lit/ug/tidu366/tidu366.pdf</a>. This should not be any more difficult to implement than a regular copper Ethernet interface, which means it still requires a good deal of care, but will be less challenging than a 1G+ SERDES. The downside is that from a quick look at the datasheets this solution will consume nearly 1W, so it likely won&#8217;t meet your power budget even accounting for the fact that your data rate will be relatively low.</p>
<p>If you want an even simpler option, there are other fiber transceivers beyond TOSLINK ones. Broadcom and Avago would be key brands to look at, but just browsing Mouser&#8217;s Fiber Optic Transceiver category brings up several promising options in the 50-100Mbd range.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
