Argon One V3 not completely powering down (red led keeps burning)

Hello,

I’m using an Argon One V3 (with NVME) to house my Raspberry Pi 5 (as you probably would have guessed already by the title of the post).

I started to use this case with Raspberry Pi OS (bookworm) and when I selected shutdown from the menu the Pi would shutdown and the case would completely power off (the red led went off after a little delay).

Recently I reinstalled the Pi with Raspberry Pi OS (trixie). Now, when I select shutdown from the menu the Pi still shuts down, but the case will not completely power off (the red led remains burning) and I have to very long press the power button for the power to be cut off completely.

When I press the power button for a bit over 3 seconds (as per the user manual), the Pi shuts down and the power is cut off (the red light goes off, but this is tricky timing: keeping the button pressed a little too long cuts power without a proper shutdown).

After having read Power switch problems - #7 by HarryH, I tried the suggested

$ sudo i2cset -y 1 0x1a 0x86 0x01

This results in the case powering down after some 17 seconds (on my system), without the plymouth poweroff service splash screen, giving me the impression that, contrary to what is suggested in the post, this is not a neat shutdown but more an delayed power off (I’m not sure, as I’m not familiar with the exact semantics of the given i2cset command).

When I issue i2cset command and then select shutdown from the menu, the Pi shuts down - at least, the plymouth poweroff service splash screen is shown and shortly after that the case powers down (the red light goes off).

As a workaround I now have created a script that calls the i2cset command followed by the instruction for the plymouth command configured in the /usr/lib/systemd/system/plymouth-poweroff.service, and I have replaced the original command in the plymouth-poweroff.service with my script:

#!/bin/bash
# name: /usr/local/bin/enable_poweroff_and_show_plymouth_splash.sh
/usr/sbin/i2cset -y 1 0x1a 0x86 0x01
/usr/bin/plymouth show-splash
# name: /usr/lib/share/systemd/system/plymouth-pwoweroff.service
[Unit]
Description=Show Plymouth Power Off Screen
After=getty@tty1.service display-manager.service plymouth-start.service
Before=systemd-poweroff.service
DefaultDependencies=no
ConditionKernelCommandLine=!plymouth.enable=0
ConditionKernelCommandLine=!nosplash
ConditionVirtualization=!container

[Service]
ExecStart=/usr/sbin/plymouthd --mode=shutdown --attach-to-session
#
# Original ExecStartPost line:
#
#ExecStartPost=-/usr/bin/plymouth show-splash
ExecStartPost=-/usr/local/bin/enable_poweroff_and_show_plymouth_splash.sh
Type=forking
RemainAfterExit=yes

When I now select shutdown through the menu, the Pi shuts down and after a little while the red light goes off.

I just can’t get rid of the impression that this should have worked out of the box, or is this a known problem for the combination of Raspberry Pi OS (trixie) with the Argon One V3?

If it should have worked out of the box, what are the steps I could take to make powering down work without my workaround?

And lastly, since I would like to - kind of - understand what is happening: is there documentation available for the i2cset commands possible for the Argon One V3, and their semantics?

Regards,
Jermus

Hello Jermus,

Your observation was right. It can only be a graceful shutdown, if the system shutdown process (mostly via systemd) sends the i2cset command at the very end (if not: red LED issue/unsuccessful hardware shutdown, if manually initiated: delayed shutdown - 17 sec. in your case). The Plymouth/OS wasn’t aware of the initiated hardware shutdown in your test scenario, so your test scenario wasn’t a neat shutdown from the point of Plymouth/OS view.

Intended workflow in sequential order:

  • GUI or CLI initiates OS shutdown
  • systemd begins to terminates the services (during this an installed hook of the argon1.sh script triggers the 10 or 17 seconds delay via I2C command)
  • system halt
  • red LED
  • (10 or 17 seconds are over) poweroff of the Argon40 case/red LED off

Maybe this helps you to have a better understanding of the process.

IMO: The argon1.sh and their downloaded subscripts scripts must reworked/fixed by Argon40 for usage with Debian Trixie to ensure an hook in systemd exists and is working well. Then the shutdown should working well again, independend whether you use the GUI or for example “sudo poweroff” at CLI.
Your approach/workaround works too, but only fixes the problem if Plymouth is involved.

Regards,
Harry

Hello Harry,

Thanks for the detailed answer.

I wonder if Argon is willing to provide updated scripts to make them fit for Debian Trixie?

Since I mainly shutdown the pi when indeed Plymouth is involved, I can live my workaround (for now :wink: ).

Regards,
Jermus

Hello,

I had contact through zendesk with Argon40 and they stated that the issue is known and that the request for updated scripts already has been made. They advised me to stick with Raspberry Pi OS (bookworm) for now and periodically run the argon1.sh script to see if it has updated (by checking the version number in the Argon Configuration Tool) and - implicitly - to try the move to Raspberry Pi OS (trixie) after the update.

So we can expect proper support for Raspberry Pi OS (trixie) from Argon40 soon™ :wink:

I have to say, I really appreciated the prompt answer on the support ticket!

Regards,
Jermus