December 16, 2018
I see lots of questions on the internet about the Argon One v2 case for the Pi 4’s fan not running or the power staying on after shutdown. This issue does have a solution, but it’s tough to find very clear instructions. My goal is to solve that problem with this post and provide a concise step-by-step guide into resolving the issue for uses of my Super Clean 256GB image or any other Batocera image. My image is running Batocera v30. I’ve been told this is natively fixed in v33, but I don’t update software unless I’m having issues with what I have so I cannot confirm this is fixed if you chose to update the image.
This solution is from the Batocera github, and was created by not43s. I claim no credit for their work. My goal is to simply make their solution more accessible to laymen. Fix issue #4328: Argon One V2/M.2 cases don’t work by not43s · Pull Request #4341 · batocera-linux/batocera.linux · GitHub
If you haven’t already, follow these directions to set up your Argon One v2 case. add_powerdevices_rpi_only [Batocera.linux – Wiki] Go ahead and find the IP address of your system in the settings and write that down.
Once you have your Argon One case setup, you’ll need to make some changes to a particular setup file for your Argon One case. You’ll need to get on your PC and open up PuTTY (or something similar) that will allow you to login to your Raspberry Pi via your IP address to make these changes. After you’ve entered your IP address in PuTTY it will pop up a screen asking for a username and password. The username and password are case sensitive. Username: root password: linux
Type the following command EXACTLY like this: nano /usr/bin/rpi-argonone
The scripting for the Argon one case will appear. We’re going to make a few small edits to lines 123, 140, 149, 169, and 175. These lines will not be numbered when you see them, but the numbers give you an idea of how far to scroll down before you make any change, and how far apart these things are from each other.
You’re looking for anything that says: bus.write_byte_data. This line appears 5 times, and you will make changes to each of the five lines. It’s simply deleting a few extra bits that don’t below in each line, so don’t worry. I’ve put the original code in italics and the updated code in bold for easier reference.
MAKE SURE YOUR CHANGES ARE FORMATTED EXACTLY AS SHOWN BELOW:
On line 123 change bus.write_byte_data(address,0,block) to bus.write_byte(address, block)
On line 140 change bus.write_byte_data(address,0,0×00) to bus.write_byte(address, 0×00)
On line 149 change bus.write_byte_data(address,0,0xFF) to bus.write_byte(address, 0xFF)
On line 169 change bus.write_byte_data(address,0,0×00) to bus.write_byte(address, 0×00)
On line 175 change bus.write_byte_data(address,0,0xFF) to bus.write_byte(address, 0xFF)
Now you’ll exit and save. Press Control + X to exit. It will ask if you want to save. Press Y, then press enter.
IF YOU SKIP THE NEXT STEP YOUR CHANGES WILL NOT BE SAVED.
While still in PuTTY, type batocera-save-overlay
While still in PuTTY, type reboot
The Argon One case fan should now work properly, and the red light should turn off when you shut down your system!
I hope this information helps people and makes your Batocera experience more enjoyable!