Will GPON Nokia G-010S-A change sn?

The instructions work :+1:. My ISP only needs the HWTC4102ef51 serial number to connect.

ONTUSER@SFP:~# ritool set MfrID HWTC
ONTUSER@SFP:~# ritool set G984Serial 4102ef51

If someone was wondering, this data is stored on an mtd8 "ri" partition, obviously.

It is good that many commands are shared by the Lantiq family. I could easily verify the connection: desired O5 state.

ONTUSER@SFP:~# onu ploamsg
errorcode=0 curr_state=5 previous_state=4 elapsed_msec=4294857976

What about the serial number? onu gtc_serial_number_get

ONTUSER@SFP:~# onu gtcsng
errorcode=0 serial_number="72 87 84 67 65 2 239 81"

Converting from decimal to hex 0x48 0x57 0x54 0x43 0x41 0x02 0xEF 0x51

So far so good. So that you don't think that everything went so smoothly, my Mikrotik router's SFP status page still displays the original serial number. Soft EEPROM's A0 is stored on the mtd9 partition. I will deal with it later.
[admin@MikroTik] > interface ethernet monitor sfp1

                      name: sfp1
                    status: link-ok
          auto-negotiation: done
                      rate: 1Gbps
               full-duplex: yes
           tx-flow-control: no
           rx-flow-control: no
               advertising: 
  link-partner-advertising: 
        sfp-module-present: yes
               sfp-rx-loss: no
                  sfp-type: SFP-or-SFP+
        sfp-connector-type: SC
       sfp-link-length-9um: 40000m
           sfp-vendor-name: ALCATELLUCENT
    sfp-vendor-part-number: 3FE46541AA
       sfp-vendor-revision: 0001
         sfp-vendor-serial: ALCLF85xxxD8pro
            sfp-wavelength: 1312.55nm
  sfp-dwdm-channel-spacing: 32Ghz
           sfp-temperature: 39C
        sfp-supply-voltage: 3.299V
       sfp-tx-bias-current: 9mA
              sfp-tx-power: 1.315dBm
              sfp-rx-power: -17.915dBm
           eeprom-checksum: good

The main reason for my interest in this module is the ability to switch LAN port from 1Gbps used by Ethernet to HSGMII 2.5Gbps. An increasing number of ISPs offer speeds above 1Gb using conventional GPON technology. If someone has any advice on how to achieve this, I am eager to hear it.

If I do on the SFP stick LAN_port_status_get

ONTUSER@SFP:~# onu lanpsg 0
errorcode=0 pport=0 mode=15 enable=1 link_status=4 phy_duplex=1

it confirms that my LAN port is 1000Mb mode

Long Form: lan_port_status_get
Short Form: lanpsg

Input Parameter
- uint32_t pport

Output Parameter
- enum onu_errorcode errorcode
- uint32_t pport
- enum lan_mode_interface mode
   LAN_MODE_OFF = 0
   LAN_MODE_GPHY = 1
   LAN_MODE_EPHY = 2
   LAN_MODE_SGMII = 3
   LAN_MODE_SGMII_FAST = 4
   LAN_MODE_RGMII_MAC = 5
   LAN_MODE_RMII_MAC = 6
   LAN_MODE_RMII_PHY = 7
   LAN_MODE_GMII_MAC = 8
   LAN_MODE_GMII_PHY = 9
   LAN_MODE_MII_MAC = 10
   LAN_MODE_MII_PHY = 11
   LAN_MODE_TMII_MAC = 12
   LAN_MODE_TMII_PHY = 13
   LAN_MODE_TBI_SERDES = 14
   LAN_MODE_TBI_AUTODETECT = 15
- uint32_t enable
- enum lan_phy_status link_status
   LAN_PHY_STATUS_OFF = 0
   LAN_PHY_STATUS_DOWN = 1
   LAN_PHY_STATUS_10_UP = 2
   LAN_PHY_STATUS_100_UP = 3
   LAN_PHY_STATUS_1000_UP = 4
   LAN_PHY_STATUS_2500_UP = 5
   LAN_PHY_STATUS_NONE = 6
   LAN_PHY_STATUS_UNKNOWN = 255
- enum lan_mode_duplex phy_duplex
   LAN_PHY_MODE_DUPLEX_AUTO = 0
   LAN_PHY_MODE_DUPLEX_FULL = 1
   LAN_PHY_MODE_DUPLEX_HALF = 2
   LAN_PHY_MODE_DUPLEX_UNKNOWN = 3

My objective is to run this OpenWRT module in LAN mode at 2500Mbps on OPNsense or pfSense. I'm more familiar with Linux(Debian 10.5.0), so I thought I'd try it out on this platform first, especially after seeing these excellent instructions.

https://www.dslreports.com/forum/r32230041-Internet-Bypassing-the-HH3K-up-to-2-5Gbps-using-a-BCM57810S-NIC

I learned from the post that only limited number of switches (Ubiquiti US-XG-6POE, ES-16-XG, US-16-XG) or Broadcom BCM57810S network card support 2.5G on SFP+ for fiber modules. The Broadcom card require some digging in diagnostic mode to enable 2.5G mode.
First step behind. Port 1 enabled for 2.5G. I left Port 2 unchanged in 1G/10G mode.

C :   Brd:Rv    Bus        PCI    Spd  Base  IRQ       MAC    FmwVer  Config
1 : 57810:B0 00:01:00:00  PCIE-8  5.0 0xF180 11  000E1E73C6A0 7.13.0  Mn,2.5GFD
                                      0xF100     P.N.:BCM957810A1006G
2 : 57810:B0 00:01:00:01  PCIE-8  5.0 0xF080 10  000E1E73C6A2 7.13.0  Mn,10G
                                      0xF000     P.N.:BCM957810A1006G
1:>

The second step calls for a little soldering. It's much easier to do it on a network card (sorry, I couldn't resist, not to post this great picture)




or the G-010S-A module itself. Much harder to do. More info at this blog post.
https://rsaxvc.net/blog/2020/8/15/Nokia_G-010S-A_Pin_6_Issue.html


Ethtool has discovered a new link mode

root@debianBCM:~# ethtool enp1s0f0
Settings for enp1s0f0:
	Supported ports: [ FIBRE ]
	Supported link modes:   1000baseT/Full 
	                        2500baseX/Full 
	Supported pause frame use: Symmetric Receive-only

My last step was to compile a new 2.5G bnx2x driver (bnx2x_warpcore+8727_2_5g_sgmii.patch)
Do you see now 2500baseX/Full in the advertised link modes? The link will not come up unless the fiber is connected and the module is authenticated.

root@debianBCM:~# ethtool enp1s0f0
Settings for enp1s0f0:
	Supported ports: [ FIBRE ]
	Supported link modes:   1000baseT/Full 
	                        2500baseX/Full 
	Supported pause frame use: Symmetric Receive-only
	Supports auto-negotiation: No
	Supported FEC modes: Not reported
	Advertised link modes:  2500baseX/Full 
	Advertised pause frame use: No
	Advertised auto-negotiation: No
	Advertised FEC modes: Not reported
	Speed: Unknown!
	Duplex: Unknown! (255)
	Port: FIBRE
	PHYAD: 1
	Transceiver: internal
	Auto-negotiation: off
	Supports Wake-on: d
	Wake-on: d
	Current message level: 0x00000000 (0)
			       
	Link detected: no

It was just a formality to connect to the SFP module and check the speed of the LAN port.
ONTUSER@SFP:~# onu lanpsg 0
errorcode=0 pport=0 mode=15 enable=1 link_status=5 phy_duplex=1

   LAN_PHY_STATUS_1000_UP = 4
   LAN_PHY_STATUS_2500_UP = 5

Running this module on a computer with OPNsense seemed to be an easy and quick task, especially since a compiled kernel module for OPNsense versions 19.7 and 20.1 is available on dslforum.
However, it is easy to fall into the trap. The bxe driver does not provide any indication regarding the speed if the fiber optic cable is disconnected or there is a problem with the serial number. I made it work, but it took a considerable amount of time before I realized what was going on.

Driver used: if_bxe_nokia.zip
scp if_bxe.ko root@OPNsense.localdomain:/boot/kernel/

I used FAT32 USB pendrive to transfer the bxe driver
mount -v -t msdosfs /dev/da0s1 /media

chmod 555 /boot/kernel/if_bxe.ko
chflags schg /boot/kernel/if_bxe.ko
echo 'if_bxe_load="YES"' >> /boot/loader.conf.local
chflags schg /boot/loader.conf.local

To check if the bxe driver has been successfully loaded.

root@OPNsense:~ # dmesg | grep BELL
bxe0: <QLogic NetXtreme II BCM57810 10GbE [BELL BYPASS] (B0) BXE v:1.7> mem 0xf1800000-0xf1ffffff,0xf1000000-0xf17fffff,0xf2010000-0xf201ffff irq 16 at device 0.0 on pci1
bxe1: <QLogic NetXtreme II BCM57810 10GbE [BELL BYPASS] (B0) BXE v:1.7> mem 0xf0800000-0xf0ffffff,0xf0000000-0xf07fffff,0xf2000000-0xf200ffff irq 17 at device 0.1 on pci1

The message that the LAN port has switched to 2.5G HSGMII will only show up when the SFP module is authenticated
root@OPNsense:~ # dmesg | grep bxe
bxe0: link_vars phy_flags : 1
bxe0: NIC Link is Up, 2500 Mbps full duplex, Flow control: ON - receive & transmit
bxe0: link state changed to UP

Not work, how I now my Nokia support 2,5G?

The chip PEB98035 supports it. What is your firmware version?
ONTUSER@SFP:~# cat /configs/image_version

Check your SFP's EPROM Bit Rate,Nominal (bit 0xC according to MSA) for 3200 (0x20)

root@debianBCM:~# ethtool -m enp1s0f0
	Identifier                                : 0x03 (SFP)
	Extended identifier                       : 0x04 (GBIC/SFP defined by 2-wire interface ID)
	Connector                                 : 0x01 (SC)
	Transceiver codes                         : 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x00 0x20
	Transceiver type                          : Ethernet: 1000BASE-LX
	Encoding                                  : 0x03 (NRZ)
	BR, Nominal                               : 3200MBd

root@debianBCM:~# ethtool -m enp1s0f0 hex on
Offset		Values
------		------
0x0000:		03 04 01 00 00 00 02 00 00 00 00 03 20 00 28 ff 
0x0010:		00 00 00 00 41 4c 43 41 54 45 4c 4c 55 43 45 4e 
0x0020:		54 20 20 20 20 20 20 20 33 46 45 34 36 35 34 31

[admin@MikroTik] > interface ethernet monitor sfp1
 eeprom: 0000: 03 04 01 00 00 00 02 00  00 00 00 03 20 00 28 ff  ........ .... .(.
         0010: 00 00 00 00 41 4c 43 41  54 45 4c 4c 55 43 45 4e  ....ALCA TELLUCEN
         0020: 54 20 20 20 20 20 20 20  33 46 45 34 36 35 34 31  T        3FE46541

Is the default mib file 1G or 2G?

ONTUSER@SFP:~# uci show omci.default.mib_file
omci.default.mib_file=/etc/mibs/data_2g_8q.ini

That's all I could find.

g-010s-a do not work for us

ONTUSER@SFP:~# onu ploamsg
errorcode=0 curr_state=5 previous_state=4 elapsed_msec=593485538

g-010s-a will not lift DHCP IP???? NOT work! what to do?

hi, you can try to change mac address port sfp on your router = mac address WAN of GPON ONT/ONU of ISP. Because O5 it's mean Authentication successful.

Thank @jangdong I cannot tried. Mine Nokia G-010S-A IS not working. Is brick, is doorstep, is not respond.
How can I fix this?

you mean: you update the firmware and failed, right?

Thanks @jangdong. I update the firmware and failed. Now brick. No ping response.
ping 100% loss :skull: :zap:

oh man, I think you need to back up before you do something special

and:

For G-010S-A to allow future recovery access
root@SFP:/# fw_setenv bootdelay 5
root@SFP:/# fw_setenv asc0 0
root@SFP:/# fw_setenv preboot

So before G-010S-A running OpenWrt - (14.07_ltq) or OpenWrt - (12.09_ltq).

Why do you want to re-flash fw?

The designers of this module left the recovery mode in place. All you have to do is

Repair the u-boot environment or switch to working image 0 or 1

FALCON => setenv preboot
FALCON => setenv commit 1
FALCON => setenv next_active 1
FALCON => saveenv

Use this opportunity to back up all your partitions!

Advice from someone who soft-bricked this module. Back up your mtd1 partition. Then delete the " evil " GPIO 100

fw_setenv preboot

Evil GPIO 100 is responsible for the bootloader lock on Lantiq SFP modules. Please pass this message on to other forums.

Hello, I'm new to the forum. I am looking to purchase an SFP G-010S-A that is being sold by Aliexpress. Well I don't know if it will work on my ISP. I'm from Brazil and I have a local fiber internet. One could say if you have a way of knowing what type of configuration my ISP uses. Type serial number, mac address, PLOAM (SLID) or some other I can't say. My ISP installed a Nokia G-140W-H modem.I will use it on a RB 4011.



Guys, could someone tell me what input does this module Nokia G-010S-A have: APC or UPC?

Thank you!

G-010S-A has APC (green clip).
G-010S-P has UPC (OpenWrt 12) and newer hw revisions have APC (OpenWrt 14)
MA5671A has APC

2 Likes

Hello I have one of these here and did the same as you posted, except for the mac part but I ended up forgetting to use the ritool dump command and did the reboot, but after that it is no longer accessible via ssh or web, ping da. I might have spoiled him. you would have a complete nard dump.

Hi everyone,

I recently bought a G-010S-A module. I've been trying to upgrade its firmware to the latest version (3FE46398BGCB22.bin) uploaded to this github repo which supposedly fixes compatibility issues with Huawei OLTs.

I have it loaded on image1.

Does anybody know how to make the module boot from image1? I've run update_env_flag 1 to make the module boot from image1 this command in turns executes the following commands:

fw_setenv commit 1;
fw_setenv next_active 1;
fw_setenv image0_is_valid 1;
fw_setenv image1_is_valid 1;

However, the module is still booting from image0 after a reboot. Do you guys know how I can force it to boot from image1? I'm trying to replace my Huawei ONT with this module, I can get it to reach O5 status with the current firmware but looks like no VLAN traffic is being sent or received. So I wanted to check if flashing it to the latest firmware available would make it work.

I posted the output of the fw_printenv command on this github thread: G-010S-A with VLan · Issue #6 · hwti/G-010S-A (github.com)

Also, the preboot variable currently contains:

ONTUSER@SFP:~# fw_printenv preboot
preboot=gpio clear 100

@hakan Could you please let me know if this is the GPIO 100 you mentioned before? If so fw_setenv preboot should remove it correct?

Yes, GPIO 100 should removed from any Lantiq PEB98035 modules and bootdelay time increased to 3-5 seconds

Did this work? After flashing it to that firmware I lost access to the module.