iMagz Posted January 2 Posted January 2 What happened? Orange Pi 3 LTS rarely recognize ethernet connection. How to reproduce? Flash Orange Pi 3 LTS with an image of the latest version of Armbian. Extra Info The latest images tested which worked flawlessly was: Armbian_community_25.11.0-trunk.437_Orangepi3-lts_trixie_current_6.12.47_minimal.img Armbian_23.8.3_Orangepi3-lts_jammy_current_6.1.53_minimal.img Images tested which didn't worked: Armbian_community_26.2.0-trunk.151_Orangepi3-lts_trixie_current_6.12.63_minimal.img Armbian_community_26.2.0-trunk.100_Orangepi3-lts_trixie_current_6.12.63_minimal.img 0 Quote
Werner Posted January 3 Posted January 3 May have found something. Perhaps https://lists.openwall.net/linux-kernel/2025/09/17/618 causes issues. Here is a test image that works around this by adjusting device tree a bit. Please test and report https://testing.armbian.de/Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_current_6.12.63_minimal.img.xz 0 Quote
iMagz Posted Sunday at 12:24 AM Author Posted Sunday at 12:24 AM (edited) Here I leave my logs, if you need additional ones let me know: ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: end0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000 link/ether [MAC ADDRESS] brd ff:ff:ff:ff:ff:ff altname enx[XXXXX] 3: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether [MAC ADDRESS] brd ff:ff:ff:ff:ff:ff altname wlx[XXXXX] I tested the image provided and after numerous reboots it didn't work, still the same problem. Doing some other testing i compile the following image Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_forky_edge_6.18.2_minimal.img which I extracted it from Armbian GitHub from this tag: "v26.2.0-trunk.146" https://github.com/armbian/build/releases/tag/v26.2.0-trunk.146 and it worked. i don't know if it has to the with the kernel version or something but I think is something to consider. Edited Monday at 01:57 AM by iMagz To format it better. 0 Quote
Werner Posted Sunday at 06:29 AM Posted Sunday at 06:29 AM 6 hours ago, iMagz said: Doing some other testing i compile the following image Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_forky_edge_6.18.2_minimal.img which I extracted it from Armbian GitHub from this tag: "v26.2.0-trunk.146" https://github.com/armbian/build/releases/tag/v26.2.0-trunk.146 and it worked. i don't know if it has to the with the kernel version or something but I think is something to consider. So to cut a long story short 6.18.y kernel image works? If so then this issue has low priority since 6.18 will replace 6.12 as current in a few month anyway since it is the new LTS kernel upstream. 0 Quote
Werner Posted Sunday at 06:53 AM Posted Sunday at 06:53 AM Different attempt. Instead of working around trying to revert which might be the root cause: https://lists.openwall.net/linux-kernel/2025/09/17/618 I'll provide you with another image containing this adjustment shortly. https://testing.armbian.de/Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_current_6.12.63_minimal.img.xz Could you do me a favour and execute these commands on both in a non-working state of a broken image and in working state of a good image? dmesg | grep -i "phy.*halt\|mdio.*reset" watch -n 1 'ethtool eth0 | grep -E "Speed|Duplex|Link detected"' cat /sys/class/net/eth0/phydev/phy_state 2>/dev/null Edit: https://testing.armbian.de/Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_current_6.12.63_minimal_regulator_fix.img.xz this image follows another different approach by adjusting regulators which may cause issues. Feel free to test 0 Quote
iMagz Posted Monday at 01:52 AM Author Posted Monday at 01:52 AM Unfortunately I tested both of the images provided and neither worked. After testing the images I ran the commands that were asked to be run on the following images: Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_edge_6.18.2_minimal.img [ETHERNET CONNECTION WORKING] (I realized that forky isn't for me so I compile it with trixie which is used for the official images and it also works) Armbian_community_26.2.0-trunk.151_Orangepi3-lts_trixie_current_6.12.63_minimal.img [ETHERNET CONNECTION NOT WORKING] dmesg | grep -i "phy.*halt\|mdio.*reset" In both images it didn't show any output. watch -n 1 'ethtool eth0 | grep -E "Speed|Duplex|Link detected"' Every 1.0s: ethtool eth0 | grep -E "Speed|Duplex|Link detected" orangepi3-lts: Mon Dec 29 21:48:01 2025 netlink error: no device matches name (offset 24) netlink error: No such device netlink error: no device matches name (offset 24) netlink error: No such device netlink error: no device matches name (offset 24) netlink error: No such device netlink error: no device matches name (offset 24) netlink error: No such device netlink error: no device matches name (offset 24) netlink error: No such device netlink error: no device matches name (offset 24) netlink error: No such device netlink error: no device matches name (offset 24) netlink error: No such device In both images it showed this because Armbian use end0 instead of eth0 so I ran it with end0 instead and it showed this: [Ethernet Connection NOT working image] Every 1.0s: ethtool end0 | grep -E "Speed|Duplex|Link detected" orangepi3-lts: [DATE] Speed: Unknown! Duplex: Unknown! (255) Link detected: no [Ethernet Connection working image] Every 1.0s: ethtool end0 | grep -E "Speed|Duplex|Link detected" orangepi3-lts: [DATE] Speed: 1000Mb/s Duplex: Full Link detected: yes cat /sys/class/net/eth0/phydev/phy_state 2>/dev/null In both images it didn't show any output. I think is because not only is end0 instead of eth0, which I tested by changing them, but also there isn't any phy_state file in the /sys/class/net/eth0/phydev/ directory. 0 Quote
Werner Posted Monday at 07:10 AM Posted Monday at 07:10 AM Bummer. Well. Was worth a try. You can stick with 6.18 for now. 0 Quote
Werner Posted Monday at 07:55 AM Posted Monday at 07:55 AM One last attempt. Reverted back to .62 due to upstream regulator handling changes https://testing.armbian.de/Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_current_6.12.62_minimal.img.xz 0 Quote
iMagz Posted Monday at 09:25 PM Author Posted Monday at 09:25 PM Unfortunately, it didn't work. 0 Quote
Werner Posted Tuesday at 06:33 AM Posted Tuesday at 06:33 AM Okay we're randomly poking at things. Please provide the following for every image you test. dmesg | grep -iE "stmmac|sun8i|dwmac|emac|phy|mdio|motorcomm|yt8531" dmesg | grep -i "registered.*phy\|phy.*connect" ls -l /sys/bus/mdio_bus/devices/ cat /sys/bus/mdio_bus/*/phy_id 2>/dev/null find /sys/class/net -name "end0" -o -name "eth0" | head -1 | xargs -I {} cat {}/phys_switch_id 2>/dev/null ls /sys/firmware/devicetree/base/soc/ethernet*/mdio/ and the output of armbianmonitor -u (if network doesn't work use -U instead to print to stdout) The following one adds phy-io-supply = <®_gmac_3v3>; to the emac, just in case... https://testing.armbian.de/Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_current_6.12.63_minimal_phy-io-supply.img.xz 0 Quote
iMagz Posted 13 hours ago Author Posted 13 hours ago Unfortunately, after multiple tries the image provided didn't work. Here is the outputs of the commands asked to be runned with there respective tested images: dmesg | grep -iE "stmmac|sun8i|dwmac|emac|phy|mdio|motorcomm|yt8531" dmesg | grep -i "registered.*phy\|phy.*connect" ls -l /sys/bus/mdio_bus/devices/ cat /sys/bus/mdio_bus/*/phy_id 2>/dev/null find /sys/class/net -name "end0" -o -name "eth0" | head -1 | xargs -I {} cat {}/phys_switch_id 2>/dev/null ls /sys/firmware/devicetree/base/soc/ethernet*/mdio/ Armbian_community_25.11.0-trunk.437_Orangepi3-lts_trixie_current_6.12.47_minimal.img [NOT WORKING] https://pastebin.com/v4bqxkeU Armbian_community_26.2.0-trunk.100_Orangepi3-lts_trixie_current_6.12.63_minimal.img [NOT WORKING] https://pastebin.com/fG0YKepz Armbian_community_26.2.0-trunk.151_Orangepi3-lts_trixie_current_6.12.63_minimal.img [NOT WORKING] https://pastebin.com/4eEC9mMg Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_current_6.12.63_minimal_phy-io-supply.img [NOT WORKING] https://pastebin.com/DnRgP4k5 Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_edge_6.18.2_minimal.img [WORKING] https://pastebin.com/8qp2X9wC armbianmonitor -U Armbian_community_25.11.0-trunk.437_Orangepi3-lts_trixie_current_6.12.47_minimal.img [NOT WORKING] https://pastebin.com/iUKFu1u0 Armbian_community_26.2.0-trunk.100_Orangepi3-lts_trixie_current_6.12.63_minimal.img [NOT WORKING] https://pastebin.com/SUDx7yme Armbian_community_26.2.0-trunk.151_Orangepi3-lts_trixie_current_6.12.63_minimal.img [NOT WORKING] https://pastebin.com/QVU9q2La Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_current_6.12.63_minimal_phy-io-supply.img [NOT WORKING] https://pastebin.com/qiE4u2PQ Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_edge_6.18.2_minimal.img [WORKING] https://pastebin.com/2iWbYgqK For some reason, Armbian_community_25.11.0-trunk.437_Orangepi3-lts_trixie_current_6.12.47_minimal.img stopped working when it did before. I tested it 5 times, and none of those boots worked. I don't know if the times I tested it before worked because of the small chance of booting with an ethernet connection, but it stopped working after booting. Anyway, I just want to clarify the inconsistency, but Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_edge_6.18.2_minimal.img is still consistently working after numerous boots. Also, while testing the images to provide the outputs, I realized something interesting, which for some reason I didn't notice before. After booting for the first time, the images downloaded from the official place, https://www.armbian.com/orangepi3-lts/, showed a message that explains that the image used is a “Developer Preview Build” and that it should not be used for production. I don't know if this is expected or is a mistake in publicizing the incorrect images, but now that I realized it, I felt that I needed to disclose it. Maybe that is the reason the Ethernet connection is not working. Armbian_community_26.2.0-trunk.151_Orangepi3-lts_trixie_current_6.12.63_minimal.img Welcome to Armbian_community! Documentation: https://docs.armbian.com | Community support: https://community.armbian.com/ IP address: Network connection timeout! Create root password: **** Repeat root password: **** Developer Preview Build This Armbian image was generated automatically for development and testing purpose. It may include unfinished features or unstable components. If you are not here to report issues or just test it, please do not use this image in production. Expect things to change - or even break - as improvements are made. Creating a new user account. Press <Ctrl-C> to abort Please provide a username (eg. your first name):_ Armbian_community_25.11.0-trunk.437_Orangepi3-lts_trixie_current_6.12.47_minimal.img Welcome to Armbian_community! Documentation: https://docs.armbian.com | Community support: https://community.armbian.com/ IP address: Network connection timeout! Create root password: **** Repeat root password: **** WARNING! You are using an automated build meant only for developers to provide construtive feedback to improve build system, OS settings or UX. If this does not apply to you, STOP NOW! Especially don't use this image for production since things might not work as expected or at all. They may break anytime with next update. Creating a new user account. Press <Ctrl-C> to abort Please provide a username (eg. your first name):_ 0 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.