OrangePi 3 LTS: Ethernet Connection Timed Out

  • log files:

    intermittently, the ethernet port will fail to work after a reboot. Other times, it will eventually work but the boot process will be significantly longer and there will be a longer than usual delay before the LED on the ethernet port starts blinking.

    If I check dmesg after one of these long boots I see the "NETDEV WATCHDOG: eth0..." fault. (it also shows up in the attached log). It dumps some diagnostics into the log, resets the ethernet adapter and then after a couple seconds i see the "Link is Up..." message.

    the occasional delay i don't mind, but when it never resets and the port stays dead is a bigger problem. :|

  • Looks like an initialization problem of the Ethernet adapter:

    jernej ?

  • It's hard to determine correct RX and TX delays, which are needed for good or even stable performance, due to different PHY drivers in various forks.

  • I am marking this thread resolved because I am 99.5% sure this problem has nothing to do with LE, and I also identified a reliable (but strange) workaround.

    I have several Opi3Lts, and some of them experience the problem frequently, but one of them never has. Also, even with a different OS (armbian) I was still seeing the intermittent no-ethernet problem. So this is not a LIbreelec problem, its probably a marginal hardware design.

    So here is my solution: I pinch the ethernet chip. Seriously.

    if the ethernet fails to enable after a boot, I place my thumb firmly over the small "Motorcomm" chip next to the RJ45 connector while squeezing directly behind it on the other side of the board with my index finger. I keep my fingers there while powering up the board, and once I see the LEDs on the ethernet socket blinking I can let go and it will be fine until the next reboot. Works 9 out of 10 times.

    I heard about this trick years ago, sometimes with a digital circuit that is on the verge of working/not-working the extra capacitance of a finger can delay or filter the waveform just enough to make something work.

  • Do you know if vendor images based on BSP kernel also exhibit this issue?

    not exactly sure how I know its a BSP kernel. In addition to Armbian, I tried the "official" debian image from the OrangePi website, but the board has the same problem.

    Edited once, last by gadget_guy (September 6, 2023 at 5:00 PM).

  • Not related directly to your board but many of the Rock64 boards exhibited similar symptoms. I do not advise this fix but it appeared that the solder points of the Ethernet socket had loosened somehow and when the board heated through use the intermittent on/off behaviour started. I used a resolder flow to correct the problem and it never returned.

    Again I stress do not attempt this repair unless you are very familiar with soldering techniques. I’m not saying your Ethernet port is loose but try reading up on this problem and see for yourself though.

  • gadget_guy I'm researching network bring up issues on non-LTS version and I found out one possible explanation for non-working network. Can you try with patch and see if that solves your network issues? This will make sure that unused regulators are powered off immediately. Once network driver loads, it will properly power up PHY again.

  • jernej lol, you assume i know how to recompile a kernel, I'm flattered. but i always wanted to learn, so i RTFM

    and it seems to be successfully building. (for my own future reference, I just replaced "PROJECT=Generic ARCH=x86_64" with "PROJECT=Allwinner ARCH=aarch64 DEVICE=H6").

    for the patch though, i see a bunch of numbered files in subdirectories in "projects\Allwinner\patches". Do I just create a new text file somewhere in there with the contents of your patch? Does it matter what I name it?

    Thanks for help!

  • ds

    for the patch though, i see a bunch of numbered files in subdirectories in "projects\Allwinner\patches". Do I just create a new text file somewhere in there with the contents of your patch? Does it matter what I name it?

    You can name it whatever you want, as long as it ends in .patch.

  • Ok, thanks for testing. So official image (from OrangePi site) has same issue? If that's so, it's most likely design issue. I can borrow oscilloscope at some point and measure timings and voltage levels, just to see if software is properly configured. But that won't happen anytime soon.

  • To revive this topic a bit and maybe give some hope. Recently, there was a patch submitted to linux-sunxi ML to fix ethernet on another board, but with Motorcomm Ethernet PHY with adding some extra properties. I have no idea why it would work, but it doesn't hurt to try at this point. gadget_guy would you be willing to test? What do you prefer? Patch? Image? Update file? LE11 or LE12 nightly?

  • i didn't create that nocompat file, but it seemed to unpack and install the update just fine.

    unfortunately the ethernet still won't enable unless i keep my finger on the chip during boot process.