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 January 4 Author Posted January 4 (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 January 5 by iMagz To format it better. 0 Quote
Werner Posted January 4 Posted January 4 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 January 4 Posted January 4 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 January 5 Author Posted January 5 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 January 5 Posted January 5 Bummer. Well. Was worth a try. You can stick with 6.18 for now. 0 Quote
Werner Posted January 5 Posted January 5 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
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 Friday at 09:53 AM Author Posted Friday at 09:53 AM 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
kris777 Posted 8 hours ago Posted 8 hours ago On my Orange Pi 3 LTS I don't use ethernet, only wifi and it works OK... maybe that's why I didn't notice the problem... but here is some information about ethernet on Pi 3 LTS https://forum.armbian.com/topic/19846-orange-pi3-lts/page/11/#comment-226536 0 Quote
Werner Posted 6 hours ago Posted 6 hours ago I tried integrating the suggestion into the actual device tree. Feel free to test: https://testing.armbian.de/Armbian-unofficial_26.02.0-trunk_Orangepi3-lts_trixie_current_6.12.64_minimal.img.xz 0 Quote
c0rnelius Posted 4 hours ago Posted 4 hours ago Here is the opi3lts DTS I use. Eth, WIFI and BT work as they should. If someone feels like running a diff and making the adjustment. sun50i-h6-orangepi-3-lts.dts 0 Quote
Werner Posted 4 hours ago Posted 4 hours ago 8 minutes ago, c0rnelius said: Eth, WIFI and BT work as they should on which kernel did you test? 0 Quote
c0rnelius Posted 3 hours ago Posted 3 hours ago 59 minutes ago, Werner said: on which kernel did you test? 6.12.y 0 Quote
Werner Posted 3 hours ago Posted 3 hours ago 13 minutes ago, c0rnelius said: 6.12.y Oh great. Then I'll steal borrow your dts and replace the one currently in the framework later 0 Quote
c0rnelius Posted 3 hours ago Posted 3 hours ago 17 minutes ago, Werner said: Oh great. Then I'll steal borrow your dts and replace the one currently in the framework later If I have the time I'll do a PR. I also ended up modifying and compiling a new hciattach_opi binary, to get bluetooth to come up. 1 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.