WeatherFlow PiConsole - Archive

@peter

Just a followup, on update.

I have two wfpiconsole systems setup. One for each of my 2 stations. A Tempest and my older WF (Sky/Air).

I have updated both systems now. The newer setup was done first running on a Rpi4 Raspad3. The second one a Rpi3b with the official 7" Rpi screen.

Both updated perfectly without any issues at all.

I Absolutely :heart: this part — I Just :heart: it!

I have 3 Tempest° devices plus WFSKY and 3 WFAIR devices. I keep a daily Weather Journal of the Highs | Lows | Wind speed and direction. . .and the Times that these parameters were attained. Using the “Station” button now allows me to switch between Stations. . .seamlessly. . .and extract the times. NO more having to “hunt” thru the graphs to locate the times that High / Low Temperatures etc occurred.

Firmware v22.3.1 of the ‘wfpiconsole’ just made my (at home) job. . .200% easier. Thanks to @padamec for suggesting the “Ability to switch between stations/devices” (Major change #1). . .and again. . .thanks to @peter for making it happen.

1 Like

Seems not to be working here:

root@raspberrypi:~# curl -sSL https://peted-davis.github.io/wfpiconsole | bash

[✓] Root user check passed
[✓] Hardware check passed (armv7l)
[✓] OS check passed (Raspbian GNU/Linux 10 (buster))

================================
Installing WeatherFlow PiConsole

[✓] Checking for updated packages
[i] No updated packages found

[i] WeatherFlow PiConsole dependency checks…
[✓] Checking for git
[✓] Checking for curl
[✓] Checking for rng-tools
[✓] Checking for build-essential
[✓] Checking for python3-dev
[✓] Checking for python3-pip
[✓] Checking for python3-setuptools
[✓] Checking for libssl-dev
[✓] Checking for libffi-dev
[✓] Checking for libatlas-base-dev
[✓] Checking for jq

[i] Installing WeatherFlow PiConsole Python modules…
[✓] Updating Python package manager
[✓] Installing Python module cython
[✓] Installing Python module websockets
[✓] Installing Python module numpy
[✓] Installing Python module pytz
[✓] Installing Python module ephem
[✓] Installing Python module packaging
[✓] Installing Python module pyOpenSSL

[i] Kivy Python library dependency checks…
[✓] Checking for pkg-config
[✓] Checking for libgl1-mesa-dev
[✓] Checking for libgles2-mesa-dev
[✓] Checking for libgstreamer1.0-dev
[✓] Checking for gstreamer1.0-plugins-bad
[✓] Checking for gstreamer1.0-plugins-base
[✓] Checking for gstreamer1.0-plugins-good
[✓] Checking for gstreamer1.0-plugins-ugly
[✓] Checking for gstreamer1.0-omx
[✓] Checking for gstreamer1.0-alsa
[✓] Checking for libmtdev-dev
[✓] Checking for xclip
[✓] Checking for xsel
[✓] Checking for libjpeg-dev
[✓] Checking for libsdl2-dev
[✓] Checking for libsdl2-image-dev
[✓] Checking for libsdl2-mixer-dev
[✓] Checking for libsdl2-ttf-dev

[i] Kivy Python library installation check (will be installed)
[✓] Installing Kivy Python library
[i] Updating Kivy configuration for touch screen…Gebruik: usermod [opties] L OGIN

Opties:
-c, --comment COMMENTAAR nieuwe inhoud van het GECOS-veld
-d, --home THUIS_MAP nieuwe thuismap voor het gebruikersaccount
-e, --expiredate VERVAL_DATUM stel account-vervaldag in op VERVAL_DATUM
-f, --inactive INACTIEF stel na het verlopen van het wachtwoord de
niet-actieve periode ervan in op INACTIEF
-g, --gid GROEP forceer het gebruik van GROEP als nieuwe primair e
groep
-G, --groups GROEPEN nieuwe lijst van bijkomende GROEPEN
-a, --append voeg de gebruiker toe aan de bijkomende GROEPEN,
vermeld bij de optie -G, zonder hem/haar
te verwijderen uit andere groepen
-h, --help toon deze hulptekst en sluit af
-l, --login NIEUWE_NAAM nieuwe waarde voor de gebruikersnaam
-L, --lock vergrendel het gebruikersaccount
-m, --move-home verplaats de inhoud van de thuismap naar de
nieuwe locatie (enkel gebruiken met -d)
-o, --non-unique gebruik van een identiek (niet-uniek) UID toesta an
-p, --password WACHTWOORD gebruik versleuteld wachtwoord als nieuw wachtwo ord
-R, --root CHROOT_MAP basismap voor chroot
-s, --shell SHELL nieuwe aanmeld-shell voor het gebruikersaccount
-u, --uid UID nieuw UID voor het gebruikersaccount
-U, --unlock ontgrendel het gebruikersaccount
-v, --add-subuids FIRST-LAST add range of subordinate uids
-V, --del-subuids FIRST-LAST remove range of subordinate uids
-w, --add-subgids FIRST-LAST add range of subordinate gids
-W, --del-subgids FIRST-LAST remove range of subordinate gids
-Z, --selinux-user SEUSER nieuwe koppeling met SELinux-gebruiker voor het
gebruikersaccount
and then it stops.

It looks like from the command you are using that you are you running your Raspberry Pi as the root user? If so, this is probably what is causing the issue. You shouldn’t need to be using root privileges.

I ran the uninstall/reinstall steps referenced above and recreated my ini, which seems to have resolved it. Was definitely having permissions issues prior to the reinstall, but all good now. Thanks!

1 Like

Let me think on this. The major source of klunkiness comes from all the API calls that a required when a new device is selected. They are needed to calculate rain accumulations, lightning strike counts, average wind speeds, peak sun hours etc., but they take time to process (there’s about 6 separate calls for all the different time spans - days/months/year). It’s the same reason that there is a pause when the console first starts up before data is flowing. If I was just displaying the raw observations fed through the websocket, then the switching would be almost instant, but without the API calls half or more of the information would be missing!

Thanks for the consideration…

It’s not a big deal as I do have two dedicated systems, however, they are not next to other. One is in another room of the house.

If you could keep it on your radar for future updates if the opportunity arises, that would be great!

Correct! Installed the update now without root perm. But, when I click on menu it’s crashing.

pi@raspberrypi:~ $ cd /home/pi/wfpiconsole/
pi@raspberrypi:~/wfpiconsole $ ls
atlas kvlang main.py service wfpiconsole.kv wfpiconsole.sh
fonts lib panels user wfpiconsole.log
icons LICENSE README.md wfpiconsole.ini wfpiconsole.service
pi@raspberrypi:~/wfpiconsole $ tail wfpiconsole.log
2021-08-21 17:04:50+0200 [-] Discarding duplicate Rapid Wind Websocket message
2021-08-21 19:24:03+0200 [-] Discarding duplicate Rapid Wind Websocket message
2021-08-22 00:37:51+0200 [-] Discarding duplicate Rapid Wind Websocket message
2021-08-22 22:28:47+0200 [-] Discarding duplicate Rapid Wind Websocket message
2021-08-24 15:55:49+0200 [-] Discarding duplicate Rapid Wind Websocket message
2021-08-25 14:54:24+0200 [-] Discarding duplicate Rapid Wind Websocket message
2021-08-25 15:50:33+0200 [-] Discarding duplicate Rapid Wind Websocket message
[INFO ] [Base ] Leaving application in progress…
[INFO ] [Support ] Stopping twisted threads
[INFO ] [Support ] Shutting down twisted reactor

I’m doing something wrong here :wink:

Yea it looks like you are somehow running the previous version of the code still.

First, check you .ini file and see what version number is listed under [System]. Make sure this is reading ‘v4.0.4’. If it isn’t, change it to ‘v4.0.4’ (without apostrophes) and then try running the update again with

wfpiconsole update

At the end of the update process it should say which version you are running, whether an update is required, and if so, which version it is downloading. Can you let me know what it says.

Hey Peter,

I was trying to implement the custom panels so I could use the BigTemperature panel. I renamed the customPanels.kv.tmpl and customPanels.py.tmpl files to .kv and .py respectively. Since I wanted to use the BigTemperature panel, I just left everything as is and did a wfpiconsole start. With those files renamed, I got this error:
wfpiconsole.log: ImportError: cannot import name ’ panelTemplate ’ from ‘panels.customPanel’ (/home/pi/wfpiconsole/panels/customPanel.py)

WORKAROUND: After some troubleshooting, I copied the panels/template.py to customPanel.py and I was able to start the PiConsole. Idk if my workaround was as intended or if I missed something and that’s why it wasn’t working.

Any thoughts?

Thanks,
Steve

I changed it like you said, but still the crash, but with this info you can do more:

Fixt.

Ok, that looks like this issue: Announcements & Updates - #2256

You need to make sure the station name in wfpiconsole.ini is correct.

I think this might be my fault. It’s possible I changed the name of a module and didn’t update it in the customPanel templates. I’ll take a look later

1 Like

I did the update yesterday. It is up and running as expected. I like the new outdoor only panel.
I am starting to play with the custom panels. When I remove the tmpl extension the app won’t start. I get the following error message.

File “/home/pi/wfpiconsole/user/customPanels.py”, line 20, in from panels.customPanel import panelTemplate
ModuleNotFoundError: No module named ‘panels.customPanel’

I did try copying the BigTemperature code to MarkTemperature code. But I still get the same message.

My workaround for this problem was to copy the panels/templates.py file to panels/customPanel.py. Then you can start your piconsole and also use the BigTemperature panel.

Steve

That did do the trick!

2 Likes

@stevecody and @cmbowman06, yes this was a mistake from me. Line 20 in user/customPanels.py needs to be changed from

from panels.customPanel import panelTemplate

to

from panels.template import panelTemplate

with that change you shouldn’t need to copy the panels/templates.py file to panels/customPanel.py. This will be fixed in the next version

Thank you. Makes sense now.

1 Like

Thank you Steve and Peter.

I do like being able to read the temperature from across the room with my aging eyes.

2 Likes

OK, I need to look into this more. For one last try, can you please delete the wfpiconsole.ini file and then start the console again. You’ll be asked to enter all your keys and station details again, but this will rule out anything being wrong with the configuration file.

Can you also let me know the details of the operating system you have by running this command and sharing the output:

lsb_release -a