▲ 39 r/openwrt

How I updated I226-V NVM firmware

Intel does NOT offer a standalone NVM update for any i226 nics. Instead, they expect you to obtain their firmware from your device OEM but this is often unavailable or grossly outdated.

The Work Around. BEWARE YOU RISK BRICKING YOUR NIC => MAKE A BACKUP !!!

  1. Download & Extract -- https://www.intel.com/content/www/us/en/download/15084/intel-ethernet-adapter-complete-driver-pack.html -- look inside for NVMUpdatePackage/I225/I225.tar.gz and extract -- look further into this I225 folder until you find nvmupdate64e (updater tool). Leave this tool where it is. Make a companion I226-V work folder and copy the nvmupdate64e + nvmudate.cfg from the I225 folder to the I226-V work folder.
  2. Open a terminal inside this new folder </> sudo ./nvmupdate64e -i -l inventory.txt </> -- Take note of what this text file says the ETrackID numeric value is for your i226 NIC. This is the firmware identifier you currently have installed.
  3. Visit BillyCurtis Community Repo for I226 firmware https://github.com/BillyCurtis/Intel-I226-V-NVM-Firmware/tree/main -- find your NIC and your current ETrackID. Find the latest 1mb or 2mb firmware version for your NIC, Take note of the ETrackID for the latest 1mb or 2mb firmware version for your NIC and download it.
  4. Drop this firmware update directly into the local I226-V work folder.
  5. Open any text editor and change the nvmupdate.cfg file -- example below
  6. Open a terminal in this same folder </> sudo ./nvmupdate64e -u -l -b -c nvmupdate.cfg </>

NOTE: If by some chance you also need to update any I225 NIC, do that first if you intend to overwrite the initial I226 nvmupdate.cfg file. You can also update other Intel NICs using the other update folders respectively. In every case, you can use the same command listed in step 6 above. This will begin the process of evaluating your NIC Non-Volatile Memory chip (NVM) for update (-u). It will verbosely log its progress (-l). Make a backup (-b). Using the config file (-c) nvmupdate.cfg. If you neglect the -l flag it will proceed silently. If you neglect the -b flag there will be no backup. You can also use the update tool to inventory all your NICs and output to a text file as suggested in step 2.

I226-V Config file Process. Use ETrackId numeric values for your NIC firmware. Don't guess

A. This is the output of my initial discovery command above in step 2, minus sensitive info
</> sudo ./nvmupdate64e -i -l inventorty.txt </>
[00:005:00:00]: Intel(R) Ethernet Controller I226-V
Vendor : 8086
Device : 125C
Subvendor : 8086
Subdevice : 0000
Revision : 4
LAN MAC : ### LAN MAC is hidden by me ###
Alt MAC : 000000000000
SAN MAC : 000000000000
ETrackId : 80000308
SerialNumber : ### SerialNumber is hidden by me ###
NVM Version : 2.23(2.17)
PBA : G23456-000
VPD status : Not set
VPD size : 0
NVM update : No config file entry
checksum : Valid

B. This README file section is where I verified the correct (1MB) firmware for my i226-V NIC
-- https://github.com/BillyCurtis/Intel-I226-V-NVM-Firmware/tree/main/README.md
I226-V

1MB File Name Ver EtrackID 2MB File Name Ver EtrackID
FXVL_125C_V_1MB_2.14.bin 2.14 80000290 FXVL_125C_V_2MB_2.14.bin 2.14 8000028D
FXVL_125C_V_1MB_2.17.bin 2.17 80000308 FXVL_125C_V_2MB_2.17.bin 2.17 80000303
FXVL_125C_V_1MB_2.23.bin 2.23 8000039D FXVL_125C_V_2MB_2.22.bin 2.22 80000371
FXVL_125C_V_1MB_2.27.bin 2.27 80000425 FXVL_125C_V_2MB_2.25.bin 2.25 800003AD
FXVL_125C_V_1MB_2.32.bin 2.32 80000425 FXVL_125C_V_2MB_2.27.bin 2.27 80000422
FXVL_125C_V_2MB_2.32.bin 2.32 80000422

you can see above my intial firmware is ETRackID 80000308 which tells me I need a 1MB size version of which the latest is version 2.32, ETrackID 80000425.

C. Just above where the README file is posted, I clicked on the I226-V > 2.32 downloads folder and downloaded FXVL_125C_V_1MB_2.32.bin raw file for my 1226-V NIC
-- https://github.com/BillyCurtis/Intel-I226-V-NVM-Firmware/tree/main/I226-V/2.32 -- and dropped it into my local I226-V work folder.

D. Having copied the initial i225 config file to my I226-V work folder, I overwrote it as follows

CURRENT FAMILY: 1.0.0
CONFIG VERSION: 1.20.0

; Upgrade all 4 onboard Intel i226-V controllers
BEGIN DEVICE
DEVICENAME: Intel(R) Ethernet Controller I226-V
VENDOR: 8086
DEVICE: 125C
SUBVENDOR: 8086
SUBDEVICE: 0000
NVM IMAGE: FXVL_125C_V_1MB_2.32.bin
EEPID: 80000425
REPLACES: 80000308
RESET TYPE: NONE
END DEVICE

E. Save and open a terminal </> sudo ./nvmupdate64e -u -l -b -c nvmupdate.cfg </>

D. I'm told I can restore the backups created by the -b flag by running the following.
</> sudo ./nvmupdate64e -r -l -c nvmupdate.cfg </>
However, I've had no need to use this command and therefore don't know it it'll work or if the config file needs more info or what.

I226-V Release Notes

Version Onboard I226-V
2.32 Fixes an issue in MDI lane swap handling that caused the P (positive) and N (negative) signal polarities to be swapped incorrectly.
2.27 General Note:1. PHY FW: 4C08_88B62. EFI LAN driver in 2MB: 0.10.06Bug Fix:• HSD 13012034657: [Foxville][NVM] QV Tools External Loopback test fails with NVM version 2.25
2.25 General Note:1. PHY FW: 4C08_08a62. EFI LAN driver in 2MB: 0.10.06Bug Fix:• HSD 13010560068: Link Flaps with Energy Efficient Ethernet Enabled• HSD 13011274310: Unexpected Link
2.23 General Note:1. PHY FW: 4C08_889D2. EFI LAN driver in 2MB: 0.10.06Bug Fix:• HSD 13011253836: Device Not Enumerated during power cycle (restart, power-on, etc.)
2.22 1. Update PHY FW to 4C08_889D2. EFI LAN driver: 0.10.06 (recommend to update to the latest version in Doc ID: 615203).Bug Fix:• #1309832919: LAN Device not enumerated after WR cycle• #13010560068: Link flaps with Energy Efficient Etherneto Note: Energy Efficient Ethernet Setting is controlled by OS drivers for both Windows and Linux and the default setting is Disabled.• #16020921487: [AMT provisioned] Sporadically Autowake during S3/S4RCR:• #1309242132: Prevent NVM update between I225 and I226• #1307470158: Enable RTD3 ULP wake from LAN_DISABLE_N negation• #18022583990: [AMT provisioned] Enable DHCP server (port 67) for PreBoot Network Boot Support• #1308723082: Dynamic D3Cold support for preventing D3Cold in S0 upon request from CSME
2.17 1. Update PHY FW to 4C07_888D
2.14 Production Release1. PHY FW to 4C08_78772. Management FW: 1.543. Energy Efficient Ethernet is enabled by the driver (Windows & Linux)
2.13 Initial Release1. PHY FW to 4C08_78772. Management FW: 1.533. Alternative MAC address section is permanently removed4. Energy Efficient Ethernet is disabled by default
u/ElderberryHamlet — 1 month ago

Anyone looking to sideload QPR 1 Stable update (September)

Here's the link for QPR 1 Beta 9

-- https://developer.android.com/about/versions/17/qpr1/download-ota

Here's the link for All Stable releases if & as they become available

-- https://developers.google.com/android/ota

Here's the link for Latest Platform Tools so you can sideload

-- https://developer.android.com/tools/releases/platform-tools

Here the link for Google USB driver for Windows (only)

-- https://developer.android.com/studio/run/win-usb

Here's an easy to follow video on how to sideload in 4 minutes

-- https://youtu.be/_DBZQgLfGPA?si=gCqr-RiDfcmOhXKY

WARNING: Sideloading a lesser or older OTA than what's installed will ALWAYS fail

u/ElderberryHamlet — 2 months ago

Pixel Tablet kernel upgraded to 6.12. Still waiting for 2 devices

Servers for the manual OTA download are still glitched and C2 for 11 series hasn't posted yet.

I assume we're going to have to wait until Monday before they get everything in order.

My verizon model 8A, a display model with burn in I bought as a backup phone can't join the Beta Program but can be manually sideloaded -- getting a 404 error when I try to download the OTA.

My 11XL hasn't shown up yet on my eligible devices list nor the manual download list.

Tablet is running a lot smoother. No more weird flickering or spaz attacks

reddit.com
u/ElderberryHamlet — 2 months ago

Don't Forget To Flash or Downgrade to Stable for Trade In

  1. Open the Find Hub app and remove your device

  2. Remove all accounts from your device

  3. Remove your device from online Google Account(s) devices

Note: if you have more than one Google Account, you need to remove from each account

  1. Opt out your device from online Android Beta Program

  2. Transfer your ESIMs and DELETE ERASE off your device

  3. Flash or Downgrade to Stable

Resetting isn't good enough.

Your phone will be rejected if the Beta Program disclaimer pops up when it turns on

reddit.com
u/ElderberryHamlet — 2 months ago

New 2022 ULED Q0520 Update

May 20, 2026 Kernel and April 5, 2026 Security update for 2022 Google TV Uled models was recently released.

Expect a similar Q0520 update for all similar models ending in the letter H (2022).

My TV is almost 4 years old, so was not expecting another software update. OEMs typically stop updating after 2 or 3 years.

Best practice is to factory reset after the update, and restart a few times after everything is set up to make sure the software is fully installed & configured.

I don't use the apps on the TV anyway but I use Google Home and Amazon Alexa+ to keep everything connected

u/ElderberryHamlet — 3 months ago

2 Beta 6 Play System Updates

Just a heads up, there are two tiny updates to Google Play System for those of you who installed QPR 1 Beta 6. 1st is 19K and the 2nd one is 6K. Neither requires a reboot.

reddit.com
u/ElderberryHamlet — 3 months ago

Active USA Referral Codes 10% off

REF-ZD60JWJPIAEF3RP20W158ZC

REF-W9N980BC1635INW9V0K1YGM

REF-CQRRHXM4FW99VFXML4B8E2V

REF-K39KX04NUFSGM5RPM6B2151

REF-YOHANILSJ76KQ9ER4BJPKDJ

REF-WFDAP9V1Y0L4YPMD3MRGQAG

reddit.com
u/ElderberryHamlet — 4 months ago

Here's my very first DIY router build -- eek

I bought a CWWK AMD 8845hs NAS mobo with 4 i226v nics built in, plus an E610-XT2 card

I'm biased in favor of Linux vs FreeBSD, so OpenWRT Snapshot it is until the stable kernel catches up with my addon card. Not even Windows 11 or Intel Diver & Support Assistant knew what to do with the card when i tested it in my gaming rig.

Microsoft Copilot+ told me to use kmod-ice with Stable but every source it pointed back to was about the driver not working. Google Gemini says kmod-ice is for intel 800 series, kmod-ixgbe is for 600 series and requires Snapshot because of kernel issues.

Google gave me an initial list of packages minus redundancies I could request in a custom build online with OpenWRT firmware selector. Microsoft said the list was missing key components for AMD CPUs. and also gave me a brief suggestion for 1st boot script to include with the online tool. Five days I've been arguing back & forth with these AI assistants and running down their sources to verify what they're saying. I thought I'd run it by you guys to see what you think.

General Objectives: Wired gateway router. Adguard with Docker. NordVPN for speed; Disable Secure Boot & Fast Boot. Cannibalize DDR5 RAM + PCIe 4 M.2 SSD from a broke mini pc; Use eero as my wifi access point in bridge mode; Amazon Echos as my Thread, Matter, Zigby hubs; Xfinity gigabit as my primary WAN; Free Apt Bldg WiFi (WiFi 5 on the 5GHz band) with a wisp router as my failover WAN; I have a 2nd M.2 slot i can use for a wifi adpater card to catch the free wifi if my travel router kicks the bucket. Anything else I'll worry about later

PBR was chosen over MWAN3 because it's supposedly better at handling NordVPN during a an internet hiccup or failover. Docker instead of Proxmox because it's easier for my first build to work on baremetal with Adguard in Docker until i figure out what I want to do with the rest of my hardware resources. DNSMAQ-FULL instead of UNBOUND because supposedly it's better...hell if I know.

Initial Build Request Errors: kmod‑amd64‑edac kmod‑k10temp luci-app-wireguard ...the 1st two are supposedly already addressed in both the Stable & Snapshot kernels. the Luci extension was either replaced or renamed luci-proto-wireguard

PACKAGES : apk-mbedtls base-files ca-bundle dropbear e2fsprogs firewall4 fstools grub2-bios-setup kmod-button-hotplug kmod-nft-offload libc libgcc libustream-mbedtls logd mkf2fs mtd netifd nftables odhcp6c odhcpd-ipv6only partx-utils ppp ppp-mod-pppoe procd-ujail uci uclient-fetch urandom-seed urngd kmod-fs-vfat luci luci-app-attendedsysupgrade kmod-igc kmod-ixgbe amd64-microcode irqbalance dnsmasq-full kmod-nft-tproxy pbr luci-app-pbr kmod-wireguard wireguard-tools luci-proto-wireguard luci-app-banip luci-app-sqm tcpdump-mini luci-ssl

1st boot Script:

#!/bin/sh

# --- 1. Network and Firewall Port Mapping ---

# Wipe clean default configuration states to prevent conflicts

uci -q delete network.lan

uci -q delete network.wan

uci -q delete network.wan2

# Build the 4-port LAN bridge (Includes the 10GbE interfaces)

uci set network.lan=device

uci set network.lan.name='br-lan'

uci set network.lan.type='bridge'

uci add_list network.lan.ports='eth2'

uci add_list network.lan.ports='eth3'

uci add_list network.lan.ports='eth4'

uci add_list network.lan.ports='eth5'

# Set local router management credentials

uci set network.lan_proto=interface

uci set network.lan_proto.device='br-lan'

uci set network.lan_proto.proto='static'

uci set network.lan_proto.ipaddr='192.168.1.1'

uci set network.lan_proto.netmask='255.255.255.0'

# Configure Primary WAN on first 2.5GbE port (eth0)

uci set network.wan=interface

uci set network.wan.device='eth0'

uci set network.wan.proto='dhcp'

uci set network.wan.metric='10'

# Configure Secondary WAN on second 2.5GbE port (eth1)

uci set network.wan2=interface

uci set network.wan2.device='eth1'

uci set network.wan2.proto='dhcp'

uci set network.wan2.metric='20'

# Save all interface assignments permanently

uci commit network

# Hook network layouts into firewall security routing zones

uci -q delete firewall.@zone.network

uci -q delete firewall.@zone.network

uci add_list firewall.@zone.network='lan'

uci add_list firewall.@zone.network='wan'

uci add_list firewall.@zone.network='wan2'

uci commit firewall

# --- 2. Create Storage Directories ---

# Set up folders for container storage and local DNS blocking

mkdir -p /opt/docker

mkdir -p /opt/agh

# --- 3. Enable BBR Congestion Control and Expand Conntrack Limits ---

# Remove any duplicate core network system limits

sed -i '/net.core.default_qdisc/d' /etc/sysctl.conf

sed -i '/net.ipv4.tcp_congestion_control/d' /etc/sysctl.conf

sed -i '/net.netfilter.nf_conntrack_max/d' /etc/sysctl.conf

# Add high-performance tuning flags

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf

echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

echo "net.netfilter.nf_conntrack_max=262144" >> /etc/sysctl.conf

# Active kernel speed upgrades instantly without a reboot

sysctl -p

# --- 4. Firewall4 (fw4) TPROXY Registry Mapping ---

# Create custom user-space file path for PBR rules

mkdir -p /etc/firewall.user.d

touch /etc/firewall.user.d/99-tproxy

# Tell the nftables engine to actively process your custom file

uci -q delete firewall.tproxy_include

uci set firewall.tproxy_include=include

uci set firewall.tproxy_include.type='script'

uci set firewall.tproxy_include.path='/etc/firewall.user.d/99-tproxy'

uci set firewall.tproxy_include.fw4_compatible='1'

uci commit firewall

# --- 5. Enable Hardware IRQ Balance Service ---

# Spreads network interrupt loads evenly across your CPU cores

/etc/init.d/irqbalance enable

exit 0

This is what I got before I take my 1st crack at installation & setup tomorrow

Any insights or suggestions would be appreciated. I'm worried some drivers may have been deleted which may prove necessary later but I expect to do a new build at least once a week until my E610 ethernet driver gets added to the stable channel whenever

reddit.com
u/ElderberryHamlet — 4 months ago

Active US Codes 10% Off Pixel Phones (USA Google Store)

  • REF-P52T4PZJ0XEH5ZJ6DRBM8JS
  • REF-GV5MYAKQFDZA14NJA97UUVN
  • REF-K39KX04NUFSGM5RPM6B2151
  • REF-W9N980BC1635INW9V0K1YGM
  • REF-YOHANILSJ76KQ9ER4BJPKDJ
  • REF-WFDAP9V1Y0L4YPMD3MRGQAG
  • REF-CQRRHXM4FW99VFXML4B8E2V
  • REF-ZD60JWJPIAEF3RP20W158ZC
  • REF-4KHIQCFJEP74LBS3GDQ5YQT
reddit.com
u/ElderberryHamlet — 5 months ago

Active US 10% Codes

REF-P52T4PZJ0XEH5ZJ6DRBM8JS

REF-GV5MYAKQFDZA14NJA97UUVN

REF-K39KX04NUFSGM5RPM6B2151

REF-W9N980BC1635INW9V0K1YGM

REF-YOHANILSJ76KQ9ER4BJPKDJ

REF-WFDAP9V1Y0L4YPMD3MRGQAG

REF-CQRRHXM4FW99VFXML4B8E2V

REF-ZD60JWJPIAEF3RP20W158ZC

REF-4KHIQCFJEP74LBS3GDQ5YQT

reddit.com
u/ElderberryHamlet — 5 months ago

Active US Codes

REF-P52T4PZJ0XEH5ZJ6DRBM8JS

REF-GV5MYAKQFDZA14NJA97UUVN

REF-K39KX04NUFSGM5RPM6B2151

REF-W9N980BC1635INW9V0K1YGM

REF-YOHANILSJ76KQ9ER4BJPKDJ

REF-WFDAP9V1Y0L4YPMD3MRGQAG

REF-CQRRHXM4FW99VFXML4B8E2V

REF-ZD60JWJPIAEF3RP20W158ZC

REF-4KHIQCFJEP74LBS3GDQ5YQT

reddit.com
u/ElderberryHamlet — 5 months ago

***Active USA Referal Codes 10% off

REF-00X44IR0ZSASE5I3FVXAWEW

REF-ZD60JWJPIAEF3RP20W158ZC

REF-W9N980BC1635INW9V0K1YGM

REF-CQRRHXM4FW99VFXML4B8E2V

REF-GV5MYAKQFDZA14NJA97UUVN

REF-K39KX04NUFSGM5RPM6B2151

REF-YOHANILSJ76KQ9ER4BJPKDJ

REF-4KHIQCFJEP74LBS3GDQ5YQT

REF-P52T4PZJ0XEH5ZJ6DRBM8JS

REF-WFDAP9V1Y0L4YPMD3MRGQAG

reddit.com
u/ElderberryHamlet — 5 months ago

If you're waiting to join the Beta program, installing the May 5th stable security patch may create a timestamp barrier to obtaining the May Beta 2 when it drops later the middle or end of May.

April Beta 1 was timestamped April 3, but didn't drop until April 22. Anyone who installed the April 5 stable security patch found they were unable to install Beta 1 OTA

If you're waiting to leave the Beta program, wait until you're offered an update which explicitly says "without wipe".

reddit.com
u/ElderberryHamlet — 6 months ago