[RPi] Argon ONE Control Add-on (Release Notes)

  • Please be aware:

    I'm not a developer of KODI Add-ons. This is only a result of someone who had the wish to get the add-on work again with LibreELEC 10 and later.


    Argon ONE Control

    2025/05/24 Version 1.1.12 (recommended): Please note the updated documentation.

    What it does:

    Provides a GUI and installs a service to manage Argon ONE case features including the power button, fan speed, and the Argon IR remote.

    • supports LibreELEC 10 / 11 / 12 / 13
    • supports Argon ONE V1/2 (RPi4)
    • supports Argon ONE V3 (RPi5)
    • enables IR Receiver (V2/V3, or if self added to V1 pcb)
    • enables Argon REMOTE support (rc_maps + keymap)
    • fan control with fan curves CPU, SSD/NVMe, GPU and PMIC
    • graceful shutdown (power button commands: Reboot , Shutdown ...)

    :!:For full support of the power button commands with a RPi5, please use LE12 at least.



    It includes a workaround for the lgpio bug (Many thanks to HiassofT). Also thanks to Nekromantik who gave me feedback regarding LE12 nightly and testing with the new V3 case.

    Important: The add-on download has been moved to GitHub: Download Please use the latest version of the add-on to ensure that the known bugs have been fixed.

    For historical reasons only: If someone stays on LE10 and the last versions really don't work, they can try version v0.0.4. I have left the download of the outdated version as an attachment just for this case.


    Known Issues:

    :!:After the power button at remote control or the button (held for > 3 seconds, but < 5 seconds) on the back of the case was pressed, KODI including all OS processes only has ~10 seconds to shutdown properly! Once initiated, the 10 seconds power cut timeout can't be interrupted and is perhaps only with another case firmware correctable.

    Solution:

    To compensate that, the add-on has been repeatedly optimized to decrease the shutdown time to below 8 seconds. Depending whats currently installed and running in KODI it need sometimes longer, then the shutdown will not be graceful and data corruption is possible in the worst case.

    This behaviour only occurs if you use the power button on the remote control or on the back of the case to switch off. If the KODI power menu is used to switch off, the power cut will triggered at the very end (+10 seconds).

    Argon ONE V1 / Fan HAT with early MCU firmware versions:

    There are some reports on the Argon40 forum that the fan control scripts they provide no longer work with the Argon ONE V1 cases since the new command set with register support was added for the Argon ONE V3 cases. I cannot verify this, and there is no feedback on whether this is really the case and switching off the register detection definitely helps. A compatibility mode was therefore added in version 1.1.9, which explicitly deactivates the detection of register support. If you are one of the early adopters with a V1 case (with micro HDMI outputs at the back of the case) and the fan control or the shutdown process already isn't working right:

    • Enable "Activate compatibility mode for ONE V1"
    • Shutdown KODI/LibreELEC
    • Make sure that the case is powerless (unplug PSU) for some seconds
    • Start LibreELEC with compatibility mode enabled

    Another workaround for the following scenario:

    Remote control power button pressed → 10 seconds timer starts -> shutdown is initiated → red LED turns off, but it seems that it doesn't respond to the power button on the remote to get it on again.

    Please try in this situation (unsuccessful shutdown):

    • The red LED must be off
    • Press the power button on the remote control
    • Wait 10 seconds (MCU cuts off power internally)
    • Press the power button on the remote control again to boot

    Breaking change:

    :!:Additional I have switched from lircd to rc_maps/keymaps (thanks to adam.h. for providing the files). If you use a self made remote control profile for your remote control, please make a backup of your remote control configuration and/or place a lock file before installation to prevent overwriting:
    touch /storage/.config/argon40_rc.lock


    Source:

    The original sources are from there: GitHub Argon40Tech and here: Installation package version 0.0.1

    I have forked (26.10.2023) the Argon40 add-on repository and pushed my changes to this repository: GitHub Argon ONE Control


    Installation:

    Quick installation (available for LE12 / LE13)

    Search for "Argon ONE control" within the LibreELEC add-ons section below "Program add-ons" and install the add-on. All requirements will be downloaded and installed automatically. If you install this add-on the first time, a reboot is required afterwards to activate all interfaces like I2C, UART and IR.

    Please have a look for more details at the linked documentation, especially if you have already an older version of the add-on in use.

    Manual installation

    The installation process will try to add 3 lines to the config.txt to enable the needed modules for I2C and UART. This part is not bullet proofed, because it looks only for the first line. It skips the needed modification if the line "dtparam=i2c=on" is already there.

    A few things to do:

    • Upload one of the linked zip files (GitHub release asset: libreelec_argononecontrol_x.x.x.zip) to /tmp, /storage or another place where you have access via KODI
    • Allow installation of Add-ons from external sources:
      Enable "Settings->System->Addons->Unknown sources"
    • in the main menu within Add-ons select "Install from ZIP file", confirm the security question and browse to the folder where you uploaded the zip
    • select the ZIP file and press OK
    • after installation: Ignore the "Device Configuration Error" teaser message and reboot, so that the modules for UART and I2C are activated

    Within Add-ons list, the Argon ONE Control (fka: ArgonForty Device Configuration) add-on should be available now. There you can configure the fan settings and the shutdown should work properly now. Please be patient, it will take a few seconds for the LED to goes off.

    Important: Recent versions are available at GitHub first, followed by publishing via LibreELEC add-ons repo: Download

  • Version 0.0.9a released

    • includes the fix for power button recognition with RPi5 + LE12
      (double tab) -> Reboot
      (hold > 3 seconds) -> graceful shutdown
      (hold > 5 seconds) -> enforced shutdown with power cut Pi

    :!:A fix for the power button recognition with RPi5 + LE11 is currently not possible, because lgpio is only available with RPi-Tools Add-on for LE12. The LE11 RPi-Tools Add-on provides the backend RPi.GPIO which doesn't support the RPi5.

    Edited 2 times, last by HarryH (February 19, 2024 at 12:17 AM).

  • Version 0.0.10 released

    Please read the additional informations in post 25 [RPi4B] Argon One Case Shutdown

    • switched from lircd to rc_maps/keytable for argon remote
      :!:if you use a own remote control profile please make a backup before install and/or add a lockfile to prevent overwriting.
      touch /storage/.config/argon40_rc.lock
    • faster shutdown/reboot
    • workaround for remote control shutdown
  • Version 0.0.11b released

    • explicit firmware detection during power off procedure to reduce this call to one
    • attempt to fix the permission issue for lgpio workaround
      The problem must have existed from version 0.0.7 to 0.0.10, but unfortunately no one here reported that the add-on does not work properly in combination with LE12. In such cases, I would be happy to receive feedback and, if necessary, a kodi.log.:
      https://wiki.libreelec.tv/support/log-files

    Edited 2 times, last by HarryH (February 26, 2024 at 12:09 AM).

  • Version 0.0.11d released

    Original this version should only be a debug release, but I corrected many things under the hood so I don't hide.

    • “Handle power button events” is honored without reboot
    • remote control shutdown exception fixed
    • fan settings now adjustable in 1 degree steps
    • added debug messages
    • freeing of power button detection GPIO pin forced
    • code cleanup

    Edit:
    Known issues:

    • LibreELEC 12 -> gpiozero makes some trouble in combination with lgpio
      If the add-on was disabled and enabled again, the GPIO pin for power button monitoring can't be freed. To workaround a reboot is needed, to work again.
      It's a general issue, not specific for this version. It affects all versions until now. I'm currently investigating to find a solution for that.

    Edited 4 times, last by HarryH: known issue added (March 1, 2024 at 12:20 PM).

  • Version 0.0.12a released

    • bugfix: works again with LibreELEC 11

    The other day I was concentrating on getting it to work with LE12 and accidentally put a line of code in 0.0.12 that prevented it from working with LE11. However, I'm surprised that no one here has complained about it. Have you all switched to LE12 yet?

  • Version 0.0.13 released

    • added option for displaying temperature in Fahrenheit
    • added SSD/NVMe temperature observing option for fan control

    Be aware: switching the display units between Celsius and Fahrenheit behaves like 2 different temperature profiles. There is no transfer of the values (no migration) from one profile to the other.

    Regarding the SSD/NVMe fan control: The settings are only shown, if the GUI is set to Advanced or Expert ! The temperature profile with the highest required PWM value wins.
    For example if you set value for SSD/NVMe too low, than the fan will starts regardless if the CPU temperature is over the 1st threshold or not.

    Edited once, last by HarryH (March 21, 2024 at 11:16 PM).

  • Version 0.0.14 beta 2 released:

    • avoid overwriting the existing rc_maps configuration, just add Argon REMOTE
    • automatically switch between Celsius/Fahrenheit, depending on regional/temperature setting
    • language file refactored
    • regression: fan always-on setting and emergency fan (90°) doesn't worked
    • switched to official add-on versioning

    With this version in the most cases it shouldn't needed anymore to create the lock file to protect the own remote control configuration.
    But for the worst case, for example if someone is using a lircd.conf file, the lock file support remains.

  • Version 1.1.0 released:

    • add-on icon changed to follow LE style (thanks chewitt for providing this)
    • issue #5: fan art modified to be more generic
    • issue #4: localization for Italian added
    • localization for German added

    Edit:

    Version 1.1.1 released:

    • some typos and translation errors fixed

    Edited once, last by HarryH (May 22, 2024 at 10:47 PM).

  • Version 1.1.7 released:

    • add-on id has changed, as a prerequisite for the upcoming integration into the LibreELEC add-ons repository
    • because the id change was required, also the name has changed to distinguish better from the outdated official add-on variations 0.0.1 from Argon40
    • icon changed

      New name: Argon ONE Control

      For more details please read the documentation at GitHub entirely.

      The add-on has been under review for approx. 2 months because, among other things, the ID had to be changed. One consequence of this is that an existing older version must be removed before a newer version than 1.1.5 is installed. However, the current customised settings are lost in the process. This is only necessary once.

      The release process is not yet complete. Only then will it become available in the LE add-ons repo. I hope that no further adjustments are necessary so that it can be included.

  • Version 1.1.8 released:

    • Contains a workaround against the long standing installation bug with LE 10 / 11 that after a installation from scratch a error message was thrown and second reboot was required to activate the I2C bus. Happened only if system-tools wasn't already installed before, like if you installed LE from scratch.

      It is therefore more of a kind of clean-up/maintenance of the code to make it reliable for users of the old LE versions 10 and 11. If I look at the download counter at #25 there seems some to stay with LE 10 / 11.
  • Version 1.1.9 released:

    • compatibility: some early MCU firmware versions could hang off after register support check
    • added menu option to explicitly disable register support detection for ONE V1/Fan HAT

    It would be nice if someone could test with a V1 case whether the effort for this switch was worthwhile and now helps to achieve a functioning fan control or whether it is useless.

  • Version 1.1.10 released:

    • regression: shutdown does not work properly if the settings.xml file is incomplete or missing

    This should fixes the issue reported by Gwin. The PRs have been created to provide this version via LibreELEC add-ons repo as well.