Hurricos / realtek-poe

7 stars 10 forks source link

random re(connecting) PoE device may put some ports in sticky Disabled state which won't power on #9

Closed walterav1984 closed 2 years ago

walterav1984 commented 2 years ago

ZyXEL GS1900-24HPv1 realtek-poe CI22 version

More specific info will come later but both @Hurricos "sees certain ports as 'disabled'" and myself already encountered this behaviour and its random and will not always manifest.

Although the /etc/config/poe file may have these ports set to Enabled, the ubus call poe info lists them as Disabled and they won't poweron a PoE device anymore although they did PoE before the random state change (after manually re/dis connecting PoE device). Doing a reboot in the past won't solve this either, also reloading service or ubus won't help. Only doing a /etc/init.d/poe restart may wake them up again.

I reported earlier see the end of that comment that with previous CI14 I also needed to change the /etc/config/poe file from enabled > disabled > enabled before port would poweron.

mrnuke commented 2 years ago

When this happens, please try the following:

# logread -te realtek-poe
walterav1984 commented 2 years ago

Repost of commit on issue #10

This time I do however have a log now of the funny sticky disabled ports 4 & 7 (possible other github issue #9 ), after reboot. So this time the output is after a reboot not coldboot. PoE power comes back on after reboot although no realtek-poe service is started so no ubus output but after starting realtek-poe -d this was the output.

ubus call poe info #after reboot PoE power come on automatically without realtek-poe service running 
#but as soon as realtek-poe -d started to get to ubus it resets all PoE power and this was the output
{
    "firmware": "v17.1",
    "mcu": "ST Micro ST32F100 Microcontroller",
    "budget": 170.000000,
    "consumption": 0.000000,
    "ports": {
        "lan1": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan2": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan3": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan4": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Disabled"   <--- Not disabled but PoE device won't power on again on this port!
        },
        "lan5": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan6": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan7": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Disabled"   <--- Not disabled but PoE device won't power on again on this port!
        },
        "lan8": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan9": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan10": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan11": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan12": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan13": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan14": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan15": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan16": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan17": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan18": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan19": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan20": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan21": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan22": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan23": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        },
        "lan24": {
            "priority": 2,
            "mode": "PoE+",
            "status": "Searching"
        }
    }
}

logread -te realtek-poe
Tue Jun 28 04:49:25 2022 [1656391765.496] daemon.err realtek-poe: received unsolicited reply
Tue Jun 28 04:49:25 2022 [1656391765.512] daemon.err realtek-poe: received unsolicited reply

https://pastebin.com/htF751nx

mrnuke commented 2 years ago

Analysis

Port 4 is indeed disabled, as reported by the MCU. Note the 03 (port) 10 (status) in the reply

TX -> 28 65 00 01 01 01 02 01 03 01 ff 96
RX <- 28 65 00 11 01 11 02 11 03 10 ff d5

Why is the port disabled in the first place

The port enable command (00) doesn't make it through. Nor does the "set detection type" command before it

TX -> 11 26 03 01 ff ff ff ff ff ff ff 34
RX <- 11 26 03 00 ff ff ff ff ff ff ff 33
TX -> 10 27 03 03 ff ff ff ff ff ff ff 36
RX <- fe ff ff ff ff ff ff ff ff ff ff f4
TX -> 00 28 03 01 ff ff ff ff ff ff ff 25
RX <- fe ff ff ff ff ff ff ff ff ff ff f4

Looks like the same symptoms as in #10.

Hurricos commented 2 years ago

@walterav1984, could you reproduce your original issue but test whether /etc/init.d/poe reload can fix this as of CI24?

walterav1984 commented 2 years ago

Just had this issue again with CI22 after a couple of warm reboots that ports 10 14 16 19 23 are Disabled and won't power up a PoE device. Will try CI29 for now and report back, is testing CI25-CI28 necessarry or are these included in CI29?

walterav1984 commented 2 years ago

Haven't encountered this issue yet with CI29 in about ~5 reboots and 5 additional service restarts and reloads!

mrnuke commented 2 years ago

Does this still happen with CI57 ?

mrnuke commented 2 years ago

Given we haven't seen any complaints about this in the past two weeks, I am closing this as resolved.