Please discard this post. The sfp module works fine. I haven’t tested with iperf3 tough.
I was a bit confused about the interface names. For the uninformed, eth0 is the switch chip (4x 1G ports), eth1 the middle sfp slot and eth2 (wan) the second one.
I wrote this notice to contribute to the community (for those who are having problems filming PPPoE). I have dialed PPPoE on SFP WAN port or WAN port successfully.
The equipment I use includes Converter Juplink 2.5G and SPF module G-010S-P (Alcatel Lucent)
Noted:
For my area, it is necessary to set up GPON S/N (on the ISP modem) on the SFP module and tag VLAN 35
pay attention to the port and device naming which can cause confusion (I don’t know why the company leaves it like that)
The SFP WAN port on the left is eth2, the other port on the right is SFP LAN is eth1, next is the WAN ethernet port, and 3 LAN ports. You can see it grouped under network → interface → device
Method 1 using Converter Juplink + SFP:
Plug optical SFP into Convert
Plug the ethernet cable into the computer, set up static ip for the computer as 192.168.1.11/24
Access 192.168.1.10 (SFP’s default IP) on the browser and click login username/password (root/empty)
Go to GPON option 1 tab, enter GPON S/N on the ISP modem located behind the modem => save and apply => reboot
Unplug the cable on the computer and plug it into the WAN ethernet port of the openwrt router to access the address 192.168.1.1
go to network tab → interface → device → bridge VLAN. add vlan 35 and select tag to WAN ethernet port
go back to the network tab → interface → select WAN port → edit → Protocol: select PPPoE → enter the username/password of the ISP provided to you → Device: br-wan.35 → save → save and apply
Wait a while to see the ipv4 address on the WAN port. you succeeded.
Method 2 only uses SFP.
(Because I couldn’t setup GPON S/N on SFP, I configured it based on method 1 which is using a converter and I don’t know why, if you can setup GPON S/N on SFP by plugging it directly on the router then congratulations you have succeeded 50%)
go to network tab → interface → device → bridge VLAN. add vlan 35 and select tag to WAN ethernet port
go back to the network tab → interface → select WAN_6 port → edit → Protocol: select PPPoE → enter the username/password of the ISP provided to you → Device: br-wan.35 → save → save and apply
Wait a while to see the ipv4 address on the WAN port. you succeeded.
Above is my experience, if there is anything wrong, please help me correct it. thanks
Just found this thread, after fighting with a GPON SFP module of my own.
Solved it via soldering iron in the end, no software changes needed:
PPPoE connection to my ISP works fine now as well.
Bit of a weird design decision for the SFP circuitry on either the side of the BPI-R4 or my specific GPON SFP module.
Alright guys, just to inform, i got a 10Gtek single mode bidi module working just out of the box. Part no: AXB23-192-20.
I’m just a bit worried, because usually single mode is for very long range cables, that module is up for 20KM, but i’m using a 40 meter cable! Yeah nonsense, but given the circumstances, i had no other option. Hopefully that won’t fry the module or the R4 itself!
I have no other 10G here, just a 2.5G machine, so “just” 280MB/s.
Hi, I’m trying to get my BPI-R4 to work with the transceiver, I got with my media converter, a TP-Link MC220L with a Flexoptix -1G SFP WIDEBAND BIDI LX 10 km, ᵀˣ1310 / ᴿˣ1470-1600 nm, DDM, LC-Simplex, Singlemode S.B1312.10.XDLSFPBiDi LX transceiver. I am running the latest SNAPSHOT of openwrt. I am on a 1Gbs Fibre connection. When I plug it it, it is recognised, but the link is not up. I just get the following entry in dmesg :
sfp sfp1: module FLEXOPTIX S.B1312.10.XDL rev A sn F7AREUK
and it shows up as eth2 interface
running ethtool to get info on it :
Settings for eth2:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseX/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 1000baseX/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: Unknown!
Duplex: Unknown! (255)
Port: FIBRE
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
Current message level: 0x000000ff (255)
drv probe link timer ifdown ifup rx_err tx_err
The link is down initially. If I run ethtool - m, I get a message saying that module is not inserted in cage. After reading in this chain, that by setting autoneg off might work, I gave it a try and the link was up and it works… I can then get ethtool -m to produce output… I have so far I managed to get ti to work, by putting the ethtool cmd in the startup. Could someone help me or point me in the right direction to get a more permanent solution, please? The output of ethtool - m is :
ethtool -m eth2
Identifier : 0x03 (SFP)
Extended identifier : 0x04 (GBIC/SFP defined by 2- wire interface ID)
Connector : 0x07 (LC)
Transceiver codes : 0x00 0x00 0x00 0x40 0x12 0x0 0 0x01 0x01 0x00
Transceiver type : Ethernet: BASE-BX10
Transceiver type : FC: long distance (L)
Transceiver type : FC: Longwave laser (LC)
Transceiver type : FC: Single Mode (SM)
Transceiver type : FC: 100 MBytes/sec
Encoding : 0x01 (8B/10B)
BR, Nominal : 1300MBd
Rate identifier : 0x00 (unspecified)
Length (SMF,km) : 10km
Length (SMF) : 10000m
Length (50um) : 0m
Length (62.5um) : 0m
Length (Copper) : 0m
Length (OM3) : 0m
Laser wavelength : 1310nm
Vendor name : FLEXOPTIX
Vendor OUI : 38:86:02
Vendor PN : S.B1312.10.XDL
Vendor rev : A
Option values : 0x00 0x1a
Option : RX_LOS implemented
Option : TX_FAULT implemented
Option : TX_DISABLE implemented
BR margin, max : 0%
BR margin, min : 0%
Vendor SN : F7AREUK
Date code : 230913
Optical diagnostics support : Yes
Laser bias current : 16.356 mA
Laser output power : 0.2355 mW / -6.28 dBm
Receiver signal average optical power : 0.1460 mW / -8.36 dBm
Module temperature : 40.87 degrees C / 105.57 deg rees F
Module voltage : 3.3278 V
Alarm/warning flags implemented : Yes
Laser bias current high alarm : Off
Laser bias current low alarm : Off
Laser bias current high warning : Off
Laser bias current low warning : Off
Laser output power high alarm : Off
Laser output power low alarm : Off
Laser output power high warning : Off
Laser output power low warning : Off
Module temperature high alarm : Off
Module temperature low alarm : Off
Module temperature high warning : Off
Module temperature low warning : Off
Module voltage high alarm : Off
Module voltage low alarm : Off
Module voltage high warning : Off
Module voltage low warning : Off
Laser rx power high alarm : Off
Laser rx power low alarm : Off
Laser rx power high warning : Off
Laser rx power low warning : Off
Laser bias current high alarm threshold : 80.000 mA
Laser bias current low alarm threshold : 2.000 mA
Laser bias current high warning threshold : 70.000 mA
Laser bias current low warning threshold : 3.000 mA
Laser output power high alarm threshold : 0.7943 mW / -1.00 dBm
Laser output power low alarm threshold : 0.1000 mW / -10.00 dBm
Laser output power high warning threshold : 0.6310 mW / -2.00 dBm
Laser output power low warning threshold : 0.1259 mW / -9.00 dBm
Module temperature high alarm threshold : 110.00 degrees C / 230.00 de grees F
Module temperature low alarm threshold : -45.00 degrees C / -49.00 de grees F
Module temperature high warning threshold : 95.00 degrees C / 203.00 deg rees F
Module temperature low warning threshold : -42.00 degrees C / -43.60 de grees F
Module voltage high alarm threshold : 3.6000 V
Module voltage low alarm threshold : 3.0000 V
Module voltage high warning threshold : 3.5000 V
Module voltage low warning threshold : 3.0500 V
Laser rx power high alarm threshold : 0.6310 mW / -2.00 dBm
Laser rx power low alarm threshold : 0.0050 mW / -23.01 dBm
Laser rx power high warning threshold : 0.5012 mW / -3.00 dBm
Laser rx power low warning threshold : 0.0063 mW / -22.01 dBm
Hey Sergio! So I bought a BPI-R4 and is running latest snapshot build. I have and ODI GPON (ODI DFP-34X-2I3) for my FTTH connection. It’s working fine @ 1000BaseX but had to put a startup script to set autoneg off after boot. I see you suggest patching OWRT to try get 2.5Gbps which I believe would include adding this new ODI model to the SFP quirk. Couple question:
1- Do you know if there is any docker image already set up to build from source that I could use to try add the quirk to latest snapshot
2- Is it possible to just generate the .ko that is needed and only add that to my running build?
For ODI DFP-34X-2C2, no need to add quirk and upstream doesn’t accept quirk due to possible unable to connect to device if module is fixed to 1gbps mode and quirk set to 2.5G.
Thanks for your response. I will take a look to the link you shared. I was actually able to get it working @ 2.5Gbps by renaming sfp.ko as suggested in the threat. After that I had to force speed and duplex using ethtool and it synced. Issue with this approach is ethtool full functionality is gone.
In case it’s useful for anyone seeking to use BPI-R4 with an ODI DFP-34X-2I3 GPON, I can confirm the SFPs EEPROM arrangement is almost the same as the 2C2 and the procedure provided by @Stat_headcrabed works perfectly.
root@OpenWrt:~# ethtool eth2
Settings for eth2:
Supported ports: [ FIBRE ]
Supported link modes: 2500baseX/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 2500baseX/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 2500Mb/s
Duplex: Full
Auto-negotiation: on
Port: FIBRE
PHYAD: 0
Transceiver: internal
Current message level: 0x000000ff (255)
drv probe link timer ifdown ifup rx_err tx_err
Link detected: yes