Argon ONE Case for Raspberry Pi 4 Updated

The Argon ONE case is very pretty (but then it is not cheap so you’d expect that). It has variable control over the built-in fan and I had to ramp up the settings as the fan was initially off even though the case was very warm – now the whole thing runs cool.

It also has a multi-function power button which operates as follows:

If the power is currently OFF, a short press turns the power ON. Otherwise there are 3 press options: >=3 seconds for soft shutdown and power cut, >=5 seconds for forced shutdown, double–tap for reboot.

Installing software to control the fan:

curl https://download.argon40.com/argon1.sh | bash

The default software setting automatically assumes that after a power failure, you want the power to remain off. You can change that behaviour with a simple i2c command which is available on the RPi command line after installing the software. NOte that I originally wrote this blog entry in June and the company had delivery problems due to the pandemic – it looks like they are back on track in August.

Argon ONE RPi4 csae

Personally, after power loss, I want the RPi to resume to staying ON AS IT ALWAYS HAS done.

The LAST thing I want is a dead PI after power failure (which can still happen even if you have a UPS). If a mains power breaker goes and your UPS times out, using the wonderful power button on this case you have to BE THERE to get the Pi powered up again. Not clever – at least not at first sight.

Initially, with a slight hack, I easily bypassed the on-off switch without making any circuitry changes (just removing a little bit of the included PCB).

Argon ONE

After hacking – with a slight piece of PCB removed to access the original RPi USB C connector (and before anyone says “you shouldn’t have hacked it” – as it happens I ordered two cases – though the external packaging for the second unit looks nothing like the first – read on as you DON’T have to hack this case given the info below).

RPI4 with Argon ONE circuitry - hacked

Here’s the finished hack job minus connector cover – I plan to use an external OLED status display…

Finished hacked RPi4 case

The top half of the case is aluminium and it has a solid feel to it. Note that the ability to boot the RPI4 from USB is covered elsewhere in the blog and is relatively new (not so for the RPi3 which has had this USB-boot feature from day one albeit with the relatively useless USB2).

cI do like the label for port connections – nice. And here’s the short video…

And here’s the update – ARGON40 emailed me back after a couple of days and here is the content of their email:

Apologies for the late response. You can check out our i2C guide in the link below to see if you can do something with your Argon ONE Case:

https://github.com/Argon40Tech/Argon-ONE-i2c-Codes/blob/master/README.md

We hope that this will be able to help you out.

So, setting MODE 2 allows the unit to turn ON automatically after loss of power. Erm, what?

As it happens, helpful blog subscribers sent me in the correct i2c command to fix the power off issue. Run this at the command-line and you have an auto-power-up Pi.

i2cset -y 1 0x01a 0xfe

Easy – that command should be in the instructions, really. While this case doesn’t solve where to store that massive SSD drive you just bought, it does everything else including a having quiet, cool, neat-looking housing for your Raspberry Pi4. Hopefully future revisions of the manual will make this all a lot clearer and I’d really like to see an extended case with enough room for an SSD and adaptor though I realise that’s probably pushing things a bit.

Back in July 2020 I was expecting a replacement case for the one I hacked. I have to say, the company were very helpful when contacted. And for clarity – apart from the obvious hole in the side, my board is now un-hacked and working as expected – comments in here indicate that very early boards may not necessarily perform the same way.

Argon ONE case for RPi4

Did I mention the command line program argonone-config ? No and I think others might have missed that too. Here in HOT Spain I just ran that and selected option 1 – FAN always on.

Sales in July 2020 were apparently delayed due to Covid and I understand some of you had difficulty placing an order for this case. Well, August 17, 2020 – my replacement case just arrived here in sunny Spain and very nice, thank you. New photo (below) on the back end of the instructions but still nothing about default power off or on – good job I’ve covered that in here.

Srgone One

So now I had my new (replacement) case – I connected up my RPi4 and… nothing. I pressed the power button – on came the Pi. I cycled the power, nothing. So the default behaviour is as before – and that’s ok.

curl https://download.argon40.com/argon1.sh | bash
Results of the CURL command

That was the fan control installed.

Next I issued the argonone-config command to set the fan always on – my preference when here in sunny Spain. And finally, to change the power-on behaviour:

i2cset -y 1 0x01a 0xfe 

Not what I expected. I even tried prefixing the command with “sudo”

Error: write failed

using:

sudo raspi-config

Under peripheral settinbgs -I enabled i2c settings – even though this was a clone of a machine which could already control I2c. Still nothing but an error.

Right this minute I’m writing off to Argon40 – meanwhile – i2c is working on that Pi as I had an OLED display on it – meanwhile on my PI which already has a working Argon ONE case, when I use:

i2cdetect -y 1

At location 1A I see 1A – on this board I get blank…. something to ponder… and now I look at it, no fan either on 192.168.1.18

good pi - bad pi

Then I realised – I had a bent pin – one of the i2c pins on my PI – I fixed that and everything seemed ok, but on power cycling, the i2c command failed to bring the unit back on and THEN I realised they’ve now modified the design, there’s a LINK option inside – defaults to pins 1 and 2 shorted – change that to 2 and 3 shorted and the unit will INDEED power up automatically.

And finally to clarify questions received about this case – I originally had one of the first cases (it is still in the UK) and at the time had no idea that there was an i2cset command – the combined case/RPi4 would always fail by design) to power up automatically after loss of power so I figured the only way was to hack it, bypassing the case on/off switch… THEN I discovered the i2cset command and asked the company for a replacement case which has JUST arrived this week – in the meantime I un-hacked the original (leaving a hole) and managed to get another case from the UK – same version – and that, like the first, responded to the I2cset command.

The newly-arrived case will NOT let you use the i2cset command BUT it has an internal link which is missing in the earlier design.

In the photo below it should be pretty obvious which is which – bottom left corner the links (missing in the rightmost case) are set here for auto-power-on – best of both worlds. 1-2 is factory default – I simply moved the header to 2-3.

Before I go it is worth mentioning that I am using an external SSD (128GB) to boot and run the RPi – in one example, powered by the RPi – in the other, powered by an external powered-USB3 hub. In the internally-powered version I need to keep the case fan running constantly to minimise heat, with the externally powered SSD, the case + RPi run cool to the touch. In each example, the software is identical and no monitors, mice or keyboards are attached – just the SSD.

Two variations of the Argon ONE case for Raspberry Pi4
Facebooktwitterpinterestlinkedin

33 thoughts on “Argon ONE Case for Raspberry Pi 4 Updated

  1. Hi Peter
    I’m new to SBCs and raspberry pi, I got the same case for the raspberry pi 4 which also runs very warm, I just wanted to know what settings you changed, so that the case runs cool.
    Thanks

    1. In the booklet there’s a manual setting for the fan, I ramped it up until I could just hear the fan close up – seems cool now and it kept the setting. Next I need to ask the company how we’re supposed to use the power I2c settings in the update link above (i.e. if we do know how to use the i2c settings, how do we make sure they stay put after power cycling).

      I’ve left the question as an issue in their repository on Github.

      1. Peter,

        I tried the following:-
        i2cset -y 1 0x01a 0xfe

        It seems to be maintained across power cycling. I think it effectively bypasses all control of the power switch on the case.

        It can then be put back to its defaults using:-
        i2cset -y 1 0x01a 0xfd

        Hope that helps.

        1. Steve thats great. I’ll note this and check tomorrow and report back – that is if my broadband work. New Vodaphone modem on the way.

            1. Hi

              Not yet. I hacked the first case to bypass power. Second case I will try using the i2c command but this is not good.

            2. Myles, You could test that the i2cset command is working as expected by using it to control the fan. For example:-
              i2cset -y 1 0x01a 0x64
              This should turn the fan on at 100%. It will reset when the service cuts in every 30 seconds to check the temperature.
              In my experience “i2cset -y 1 0x01a 0xfe” then shutting down with “halt” and removing power and then reapplying power will boot straight back up. Reverting to the default (0xfd) then requires use of the power switch on the back again.

              What I couldn’t find was a way of reading back the values of any of the data/registers using i2cget. Every attempt returned the value 0xc8. Maybe that is by design.

              Good Luck
              Steve

              1. Hi SteveH – I concur and have updated the blog accordingly as well as using this info on my latest Raspberry Pi 4 and Argon case. After issuing that I2C command on the latest firmware (the CURL command in the manual), I now have a working auto-power-on Pi.

                1. Hi Peter Scargill,

                  What do you mean by: “latest Raspberry Pi 4 and Argon case”
                  Do you mean the fixed one that has no USB-C Power issue?

                  I have tried the lastest “firmware” script from the manual. But still after running: “i2cset -y 1 0x01a 0xfe”

                  When I power off the Pi, cut the Power, give it back. Still have to press the button.

                  Note: I have one of the first Pi4 (still with power issue) and one of the first Argon One

                  Thanks in advance.

                  1. Yes, good points – I mean getting the latest Argon firmware from their site – as for Pi4, I have 3 of them, none has a power issue so I can’t comment on that.

                    Pete

                    1. UPDATE:
                      They responded in the Repo.
                      It seams that there are different Versions of the Argon One “Board” with different Firmwares on it.

                      If someone has the old one, it wont work with Code, because the MCU needs an Update.

                      They are thinking of a Jumper Method for that to keep “the old ones and new ones” Always On.

                      With that said it dose not realy depend on the Pi itself. More on the board of the Argon One.

  2. The micro HDMI ports are very poor, I have had mine replaced twice as moving the cable the picture is lost on the screen. I replaced the cooling pads today with some decent 1.5mm ones bought on eBay and it now stays under 40c most of the time with the fan coming on at 40c.

  3. I have had problems with the HDMI ports as well. I’ve been meaning to contact Argon40 about it. It’s a great case if I didn’t have this problem.

    1. Erm, there is of course a heatsink in there but there is also a fan. The fan control works but their settings are not that good, with a little tweaking the case runs cool with almost no fan sound unless your ear is pressed to the case.

      1. Agreed, I also have the case…. Was just point out to others that the case getting warm isn’t a problem – it is part of the design.
        Have Argon said anything about having a default on and use button for off mode? That would be useful for headless applications. For my use (RetroPie) it works ok as it is.

        1. No reply from Argon yet Tony – if and when they reply I’ll put it in here. Headless, yes and also in my case unattended. I had to completely bypass the switch.

          Regards

          Pete

  4. In response to LucaM – lets hope the company communicate w- we can get get in here and then everyone can have confidence they can fix the earliest cases. I’ve already fixed mine so now I have two (with a third to follow) all able to auto-power up without issue – I know that for sure, as always-on is very important to me.

  5. @Peter is there a chance to download firmware from new cases and upload it to the older?
    This will be a workaround for everyone that need the always on mode, but has old board.

    1. I’m not sure – mine just wworked. The company are responsive if you want to ask them. Do let us know when you get a response.

    2. Hi. I contacted Argon40 about available firmware downloads for the Argon One. This is their response:

      “Thank you for contacting us. We don’t have any firmware updates for the case at the moment.

      Best Regards,
      Carlos”

      So there isn’t a way to update firmware for the case itself. There can only be software revisions for the scripts that interact with the case and the Pi.

        1. Looks like there’s some firmware on the ArgonOne case. Here’s the reply I got from their customer Service:

          Thank you for contacting us. Unfortunately, if the automatic booting command doesn’t work, then it means that your boards are outdated.

          We’ll be releasing a new version of the case soon that streamlines the automatic booting process.

          We’ll update you when it’s available.

          Best Regards,

          Carlos

          Both my ArgonOne case don’t work. Reading between the lines it appears I may need to buy a new case to get this feature.

            1. My new case arrived and as detailed on the blog – the old I2c command does not work on this new case, instead, there is a 3-pin link inside – if you want auto off – link pins 1-2 (default) – if you want auto-on, link pins 2-3

              Check which case version you have. I have both types.

              1. Hi Peter,

                Pretty sure I have the old case. But just in case, can you take a picture of where the 3 pins are? I assume there are 3 pins and a 2 pin jumper. But don’t see it in the case I looked. Will open up the other Argon case I have over the weekend.

  6. not working for me 🙁

    i2cset -y 1 0x01a 0xfe

    executed flawlessly (no error)

    i2cdetect -y 1

    returns exactly your screenshot with “1a” set

    i2c is enabled in raspi-config… but no autoboot on power failure 🙁

    am I doing something wrong?

    i upload a photo of my Argon, serial number seems to be different from yours: 190918V1

    any ideas? thanks

      1. confirmed from customer support: on old boards doesn’t work 🙁 this is the answer:

        Unfortunately, if the code doesn’t work, it means that you have the original power board which does not support this feature. There also isn’t any option to update the firmware.

        The “Always-on” function was never really a feature of the initial design of the Argon ONE but we did come out with some beta boards for testing this feature. Those were manufactured in 2020 and were distributed randomly. That’s why we decided to share the code in GitHub for the “Always-on” function.

        We will be releasing a new version of the Argon One though that streamlines automatic booting by Q4 of 2020.

        1. You have to wonder why they didn’t think of “always on” as an option right at the beginning. Well, as I originally wrote about hacking mine to bypass the power button – not all is lost.

        2. I got the same answer. I asked if it would be possible to buy the replacement board once it comes out. Unfortunately they could not confirm that, but would pass on the suggestion.

Leave a Reply

Your email address will not be published. Required fields are marked *

Leave the field below empty!

This site uses Akismet to reduce spam. Learn how your comment data is processed.