ArchiveSW - Display & Data Archive Storage

I’m confused. The weather guy on our local TV news said that today was CB Radio Day (10-4), not Gary done broke it again day???

6 Likes

Are there any “I’m so far out of date that I just want to start over from scratch” instructions?

running fix.js from yesterday failed (both the original and fixed versions). Cron jobs are running every hour still so something seems to be still working, but…

1 Like

not sure all went well …
alert.log

2018-10-04 17:44:31 Starting Alert v1.6.12.017
2018-10-04 17:44:31 Added Pushover!
2018-10-04 17:44:31 Archive on socket error: ${err.stack}

panel works and I see V 1.6.12.002 just above a batterie

1 Like

That is the version of index.html so you seem to be running well.

Bob,

Yes there is and you can most likely keep your old data.

First from fix.js from here: ArchiveSW - Display & Data Archive Storage
Then run this script and follow the prompts
bash -e <(wget -qO - http://fsoft.com/wfarchive/script/install.sh)
If you have database issues you can run altertables.js and that should bring your database up-to-date.

And you can always contact me directly if you have nay issues and I’ll help get it fixed.

Hi Gary. Did the update files from server in /about; restarted server in /process management; set the Broadcast IP; restarted processes (I only have archive and server). All seemed to go ok, except that in /about the version for some of the applications didn’t update (there was a later number in the version column). I restarted the RPi, and all versions seemed to update ok (and no later version numbers in the version column). Although Alert and WeatherFormulas have no entry in Version, but do have an entry in Update (as well as Citizen, Panel, Piio - but I’m not using them).
Then tried running fix.js, and got errors:

‘’’
pi@wfarchivepi:~/wfarchive $ node fix.js
{ Error: ER_BAD_FIELD_ERROR: Unknown column ‘air_temperature_h’ in ‘DailyAir’
at Query.Sequence._packetToError (/home/pi/wfarchive/node_modules/mysql/lib/protocol/sequences/Sequence.js:47:14)
at Query.ErrorPacket (/home/pi/wfarchive/node_modules/mysql/lib/protocol/sequences/Query.js:77:18)
at Protocol._parsePacket (/home/pi/wfarchive/node_modules/mysql/lib/protocol/Protocol.js:278:23)
at Parser.write (/home/pi/wfarchive/node_modules/mysql/lib/protocol/Parser.js:76:12)
at Protocol.write (/home/pi/wfarchive/node_modules/mysql/lib/protocol/Protocol.js:38:16)
at Socket. (/home/pi/wfarchive/node_modules/mysql/lib/Connection.js:91:28)
at Socket. (/home/pi/wfarchive/node_modules/mysql/lib/Connection.js:502:10)
at emitOne (events.js:116:13)
at Socket.emit (events.js:211:7)
at addChunk (_stream_readable.js:263:12)
--------------------
at Protocol._enqueue (/home/pi/wfarchive/node_modules/mysql/lib/protocol/Protocol.js:144:48)
at Connection.query (/home/pi/wfarchive/node_modules/mysql/lib/Connection.js:200:25)
at resolve (/home/pi/wfarchive/fix.js:49:7)
at new Promise ()
at changeTable (/home/pi/wfarchive/fix.js:47:9)
at f1 (/home/pi/wfarchive/fix.js:40:8)
at
at process._tickCallback (internal/process/next_tick.js:189:7)
code: ‘ER_BAD_FIELD_ERROR’,
errno: 1054,
sqlMessage: ‘Unknown column ‘air_temperature_h’ in ‘DailyAir’’,
sqlState: ‘42S22’,
index: 1,
sql: ‘USE weatherflow;ALTER TABLE DailyAir CHANGE air_temperature_h tempH DECIMAL(5,2) NULL, CHANGE air_temperature_h_t tempHT INT(11) NULL, CHANGE air_temperature_h_d tempHD DATETIME NULL, CHANGE air_temperature_l tempL DECIMAL(5,2) NULL, CHANGE air_temperature_l_t tempLT INT(11) NULL, CHANGE air_temperature_l_d tempLD DATETIME NULL, CHANGE pressure_h presH DECIMAL(5,1) NULL, CHANGE pressure_h_t presHT INT(11) NULL, CHANGE pressure_h_d presHD DATETIME NULL, CHANGE pressure_l presL DECIMAL(5,1) NULL, CHANGE pressure_l_t presLT INT(11) NULL, CHANGE pressure_l_d presLD DATETIME NULL, CHANGE relative_humidity_h humH TINYINT(3) NULL, CHANGE relative_humidity_h_t humHT INT(11) NULL, CHANGE relative_humidity_h_d humHD DATETIME NULL, CHANGE relative_humidity_l humL TINYINT(3) NULL, CHANGE relative_humidity_l_t humLT INT(11) NULL, CHANGE relative_humidity_l_d humLD DATETIME NULL, CHANGE strike strikeT SMALLINT(3) NULL;’ }

‘’’
I won’t try and muck around with tables this time!

Thanks

Wayne

1 Like

fix.js fails with what looks like a problem with db column names (actually same error as @tepahu posted above) . So tried altertables.js and I’m getting this:

sirius:wfarchive bpaauwe $ node altertables.js
ER_DBACCESS_DENIED_ERROR
ER_DBACCESS_DENIED_ERROR

It’s been running for over an hour with no other output. I am able to access the database and tables using user ‘wf’ with the password specified in the config.json file when I connect using command line mysql.

1 Like

It looks like it has been run before and DailyAir and DailySky are as they should be.

ah yes, that will be it. ta

1 Like

I don’t know here it’s hung. It’s waiting for one of the routines to finish

Did you run the install script to do a fresh install?

It’s waiting for wftest database to get created. I believe because I don’t have user ‘wf’ configured with permission to create/drop databases as my setup is used for a lot more than just weatherflow data.

If I create the wftest database manually and skip that in archive.js, it runs for a bit longer but it’s now hit some other error and is hung here:
Table changed: relative_humidity tinyint(3)
AirObservation report_interval
ER_WARN_DATA_OUT_OF_RANGE

I have not re-run install.sh, it seems to have dependencies that don’t apply in my environment, like trying to run apt-get (which will only work on a debian based linux distribution).

2 Likes

There is an install text on the site for manual installation and yes this was designed for the RPi standard installation.

http://fsoft.com/archivesw

1 Like

I’ll see that bet and raise you one bash script to install weewx in one command :slight_smile:

Bottom line is that there are a zillion nice options, assuming the user has ‘some’ minimal Linux abilities.

Heck I even have a docker image for weewx out there that folks could tweak if needed, as well as vagrant/virtualbox VMs and automation scripts in my github repos. A whole lot of ways of getting there given the nice open API to get at the data the station provides…

3 Likes

I have a single bash script.

I raise you an application written 100% by me and 100% for WeatherFlow.
:blush:
My goal is to provide an application that has zero Internet dependency and interfaces well with Home Automation. It’s built for offline use.

2 Likes

And I’m doing everything I can to try and break it :slight_smile:

Unless trying to run altertables broke it, I believe that archive.js is still running and collecting data and I think I’m less out-of-date than I originally thought. I was looking at the wrong directory (one with a pre install.sh existing installation).

For the most part, everything seems to be working, it was just the fix.js that failed and now altertables.js. I haven’t really spent any time trying to root cause the latest issue with altertables.js. It is a bit annoying that it spits out a not very helpful error and then hangs.

I’m running this on a Fedora Linux system that I use for my database server, but hopefully by doing this I can help make the whole suite better and more robust. (and not just be annoying).

1 Like

And I do appreciate your help since you can help me make this better.

That is only used to rename columns in DailyAir and DailySky. It’s safe to delete them and altertables.js will create them. However in your case you need to find a way to let this run. You could give it the necessary credentials to run.

I will work on adding information as it is running.

That’s what I am aiming for.

At this point my only concern is your database needs changes to tables to bring it up-to-date. Can you allow altertables to run one time?

@eric

Look at the newest index.html

I hope you find the changes help on your big screen.

just upped to 1.6.12.003

indeed nice the adapting to the screen, (making it smaller at a point makes the field overflow but … you have to force it very small :wink: )

looking forward to the next upgrades, you’re spoiling us Gary :slight_smile:

1 Like

I’m just designing it to fit all the small screens I have…

Eventually I will have a 3.5" screen in each room as part of the home automation and when not in use it will display inside and outside temperature and weather data.

I’m just waiting on @dsj to send out a pre pre pre alpha Breathe.

A Raspberry Pi with touchscreen in every room. What a concept. I pitty the short people in my house.

5 Likes

how would I say ??? : :raising_hand_man:

3 Likes