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:

image

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”:

image

to

image

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.

image

Run the following command:

picockpit-client connect –skipkey

image

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:

image

That’s it – you’re finished Smile

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:

image

Click on Upgrade Client in Core commands:

image

Stay on the page, and click on STATUS below Upgrade client:

image

A checkmark in the upper right corner will indicate once the command has finished executing:

image

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:

image

click the “Go to software” button to scroll down quickly to the software module:

image

You’ll see the PiCockpit Client version of your Pi as first entry here:

image

From the command line on your Pi:

picockpit-client version

will give you the following output:

image

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:

image

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.

image