Update picockpit-client for compatibility with v2.0
The new PiCockpit release has many new features, which require a new picockpit-client version (at least v2.0.1) for compatibility.
What do you get by upgrading the picockpit-client / using PiCockpit v2.0?
- GPIO: control GPIO pins (input / output / software PWM to dim LEDs for example)
- PiControl: run commands on your Pi from the webinterface (you define the commands on the Pi in JSON files)
- PiDoctor: significantly expanded debugging & state info for your Pi (on-demand – including low power warnings, throttling warnings and much more)
- PiStats: realtime statistics (CPU load / RAM usage / WiFi strength)
And PiCockpit is still free for up to 5 pis!
Read all about the new PiCockpit v2.0 features here.
Why is the upgrade necessary?
picockpit-client needs to provide the functions which you can access from picockpit.com as friendly and easy to use Raspberry Pi web interface.
Since many new functions were added, and PiStats has been renamed from the previous PiCockpit version (it used to be called “sensors”), an upgrade of the picockpit-client is required.
If you have a version lower than v2.0.1, you will need to upgrade to enjoy the new functions which PiCockpit v2.0 and up have to offer.
Starting with v2.0.1 you will be able to easily upgrade picockpit-client from your PiCockpit webinterface.
Upgrading from 0.15.16 and previous versions
If you have been a previous user of PiCockpit before v2.0 was released, and have installed the picockpit-client, you probably have version 0.15.16 or an earlier version.
Pre-requisites:
your Pi needs to run on Raspberry Pi OS Buster (previously called Raspbian Buster).
cat /etc/os-release | grep VERSION=
should give you the following output:
The new picockpit-client release v2.0.1 is not compatible with previous Raspbian releases.
Upgrade of picockpit-client:
Please log in to your Pi, using SSH or a terminal emulator. Run the following command:
sudo nano /etc/apt/sources.list.d/picockpit.list
replace the word “stretch” with the word “buster”:
to
save the file (Ctrl + O) and exit nano (Ctrl + X).
Run
sudo apt-get update
The output should contain a line like this:
Get:1 http://repository.picockpit.com/raspbian buster InRelease [3,531 B]
Now run the upgrade command:
apt-get install –only-upgrade picockpit-client
You’ll see some output including the following:
Unpacking picockpit-client (2.0.1) over (0.15.16) …
Setting up picockpit-client (2.0.1) …
You will be presented with a question about your configuration file:
Configuration file ‘/etc/picockpit-client/picockpit-client.config.json’
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer’s version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : start a shell to examine the situation
The default action is to keep your current version.
*** picockpit-client.config.json (Y/I/N/O/D/Z) [default=N] ?
Go with the default option of “N”
Next, run
service picockpit-client status
If you see a failed here, we will need to reconnect the Pi to PiCockpit.
Run the following command:
picockpit-client connect –skipkey
note that these are two dashes before skipkey (WordPress will likely mess up the formatting).
This will re-establish contact with the MQTT server. This should probably only be necessary if you installed the old picockpit-client software release after PiCockpit v2.0 was released.
This command will also automatically start the picockpit-client service on your pi.
The Pi should now be online in PiCockpit v2.0:
That’s it – you’re finished
Upgrading picockpit-client from the webinterface (v2.0.1 +)
Note: You need to have at least v2.0.1 of the picockpit-client for this feature.
Select your Pi, and click on PiControl:
Click on Upgrade Client in Core commands:
Stay on the page, and click on STATUS below Upgrade client:
A checkmark in the upper right corner will indicate once the command has finished executing:
This will run
apt-get update
and
apt-get install –only-upgrade picockpit-client
on your Raspberry Pi. (The second command is a variation of apt-get upgrade, to only upgrade one specific software package – in this case picockpit-client).
Look at the output of the second command. As of writing this, picockpit-client v2.0.1 is still the newest version available (we’re a couple of days after release!)
In this case you will get:
picockpit-client is already the newest version (2.0.1).
Otherwise, the upgrade process will be started.
How do I find out which picockpit-client version I have?
From the PiCockpit webinterface
Go to PiDoctor on your Pi, and the Software module:
click the “Go to software” button to scroll down quickly to the software module:
You’ll see the PiCockpit Client version of your Pi as first entry here:
From the command line on your Pi:
picockpit-client version
will give you the following output:
which, as you see, also includes information about the latest available version and minimum recommended versions.
You should always try to have at least the minimum recommended version, otherwise functionality might break.
Note: if you have a version before 2.0.1 (the previous version was 0.15.16, released on 30th of October 2019), you will need to change the repository. This blog post explains how to do it.
How to identify that you have installed the old picockpit-client version
if you add the pi using picockpit-client connect, you will get the following error message:
Adding your Pi to picockpit.com as ‘Alethea’ …
PiDoctor: privacy mode enabled.
The following error was encountered:
ERROR: [400] Please upgrade picockpit-client to be compatible with PiCockpit v2.0
TIP: Use the –verbose flag to get the server’s feedback
Quitting. Sorry 🙁
Follow the instructions in this blog post to upgrade your version of picockpit-client.
Note that the Pi will still be added to your webinterface – you can simply upgrade.