adding temp sensor

862 views
Skip to first unread message

hajsek...@gmail.com

unread,
Nov 16, 2024, 2:58:02 PM11/16/24
to weewx-user
Hi
I have managed to add 3 temperature sensors but can not add 4th sensor.
I did all in skin.conf and weewx.conf but still I can not see temperature for 4th sensor.
Are there any other files to add 4th sensor in it.
I use froggit weather station which is clone of ecowitt.

hajsek...@gmail.com

unread,
Nov 22, 2024, 4:24:23 AM11/22/24
to weewx-user
this group doesn't work anymore?

sobota, 16. november 2024 ob 20:58:02 UTC+1 je oseba hajsek...@gmail.com napisala:

Karen K

unread,
Nov 22, 2024, 5:31:10 AM11/22/24
to weewx-user
Please, describe your action in more detail. What in particular did you do to add the 3 sensors? What in particular happens when you add the 4th? Which files do you mean? Please refer to the WeeWX documentation about how to write a good question. 

hajsek...@gmail.com

unread,
Nov 22, 2024, 6:19:28 AM11/22/24
to weewx-user
1 sensor was already added in so I just did the same as it was for the first one to another 3 sensors.
that is all I did and 3 extra sensors works it is visible here until fourt JUD doesn't work. http:\\vreme.povej.net

I editet file weewx.conf
and under generic I add this
                extraTemp1 = Temp.Senzor SP
                extraTemp2 = Temp.Senzor KUR
                extraTemp3 = Temp.Sensor KLT
                extraTemp4 = Temp.Sensor JUD
under skin.conf I add this

        windvec        = Wind Vector
        extraTemp1     = SPA Temperature
        extraTemp2     = KUR Temperature
extraTemp3     = KLT Temperature
extraTemp4     = JUD Temperature


        #[[[dayrx]]]
        #    [[[[rxCheckPercent]]]]
       
        #[[[daySPA]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp1]]]]
#[[[dayKUR]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp2]]]]
        #[[[dayKLT]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp3]]]]
#[[[dayJUD]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp4]]]]

#[[[weekouthumid]]]
        #    [[[[outHumidity]]]]
       
        #[[[weekSPA]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp1]]]]
        #[[[weekKUR]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp2]]]]

        #[[[weekKLT]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp3]]]]
        #[[[weekJUD]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp4]]]]
#[[[monthouthumid]]]
        #    [[[[outHumidity]]]]
       
        #[[[monthSPA]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp1]]]]
        #[[[monthKUR]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp2]]]]

        #[[[monthKLT]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp3]]]]
        #[[[monthJUD]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp4]]]]

#[[[yearouthumid]]]
        #    [[[[outHumidity]]]]

        #[[[yearSPA]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp1]]]]
        #[[[yearKUR]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp2]]]]

        #[[[yearKLT]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp3]]]]
        #[[[yearJUD]]]
        #    yscale = None, None, 0.5
        #    [[[[extraTemp4]]]]
petek, 22. november 2024 ob 11:31:10 UTC+1 je oseba Karen K napisala:

Karen K

unread,
Nov 22, 2024, 7:20:50 AM11/22/24
to weewx-user
It is more than before, but it is still not very much. 

weewx.conf is a long file, and "generic" can appear several times there. So where you added this? Try "weectl debug" to create an overview about your environment as the documentation says. 

From what you posted I assume you NAMED the sensors, but did not ADD them.

It depends on the driver, and you did not say which one you use. It is not enough to say it is an Ecowitt clone. Again, "weectl debug" would show the information needed to comment. 

Read Help! Posting to weewx user before you post.

hajsek...@gmail.com

unread,
Nov 24, 2024, 5:33:37 AM11/24/24
to weewx-user
Thank you for your info.
Driver is interceptor. Here is a weectl debug file


petek, 22. november 2024 ob 13:20:50 UTC+1 je oseba Karen K napisala:
weewx.info

Karen K

unread,
Nov 27, 2024, 10:17:49 AM11/27/24
to weewx-user
Unfortunately I do not know much about the interceptor driver. There are other people around here who know more.

There ist the section [[sensor_map_extensions]] in the driver configuration section. You will have to add entries there to use additional sensors. They look like "weewx_obs_type_name = ecowitt_sensor_name". Please refer to the Interceptor driver documentation for details.

vince

unread,
Nov 27, 2024, 12:09:49 PM11/27/24
to weewx-user
Your 'Supported SQL keys' output from weectl debug does not have a extraTemp4 element in the database.  It looks to me like you are trying to use an older weewx v3 wview-compatible database that only has 50 or so elements rather than the current wview-extended schema that has 110 or so elements in it.  A normal output would look like:

Supported SQL keys
  dateTime                  usUnits                   interval
  altimeter                 appTemp                   appTemp1
  barometer                 batteryStatus1            batteryStatus2
  batteryStatus3            batteryStatus4            batteryStatus5
  batteryStatus6            batteryStatus7            batteryStatus8
  cloudbase                 co                        co2
  consBatteryVoltage        dewpoint                  dewpoint1
  ET                        extraHumid1               extraHumid2
  extraHumid3               extraHumid4               extraHumid5
  extraHumid6               extraHumid7               extraHumid8
  extraTemp1                extraTemp2                extraTemp3
  extraTemp4                extraTemp5                extraTemp6
  extraTemp7                extraTemp8                forecast
  hail                      hailBatteryStatus         hailRate
  heatindex                 heatindex1                heatingTemp
  heatingVoltage            humidex                   humidex1
  inDewpoint                inHumidity                inTemp
  inTempBatteryStatus       leafTemp1                 leafTemp2
  leafWet1                  leafWet2                  lightning_distance
  lightning_disturber_count lightning_energy          lightning_noise_count
  lightning_strike_count    luminosity                maxSolarRad
  nh3                       no2                       noise
  o3                        outHumidity               outTemp
  outTempBatteryStatus      pb                        pm10_0
  pm1_0                     pm2_5                     pressure
  radiation                 rain                      rainBatteryStatus
  rainRate                  referenceVoltage          rxCheckPercent
  signal1                   signal2                   signal3
  signal4                   signal5                   signal6
  signal7                   signal8                   snow
  snowBatteryStatus         snowDepth                 snowMoisture
  snowRate                  so2                       soilMoist1
  soilMoist2                soilMoist3                soilMoist4
  soilTemp1                 soilTemp2                 soilTemp3
  soilTemp4                 supplyVoltage             txBatteryStatus
  UV                        uvBatteryStatus           windBatteryStatus
  windchill                 windDir                   windGust
  windGustDir               windrun                   windSpeed


I would suggest stopping weewx, 'renaming' your existing database, then starting weewx again.  That should create a new database with all the wview-extended schema elements I listed above.  Maybe that will help.

hajsek...@gmail.com

unread,
Nov 28, 2024, 7:59:27 AM11/28/24
to weewx-user
this is what I now get in log.
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__: Caught unrecoverable exception:
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****  (1050, "Table 'archive_day_altimeter' already exists")
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****  Traceback (most recent call last):
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weedb/mysql.py", line 53, in guarded_fn
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      return fn(*args, **kwargs)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weedb/mysql.py", line 247, in execute
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      self.cursor.execute(mysql_string, tuple(sql_tuple))
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/lib/python3.6/site-packages/pymysql/cursors.py", line 163, in execute
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      result = self._query(query)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/lib/python3.6/site-packages/pymysql/cursors.py", line 321, in _query
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      conn.query(q)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 505, in query
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      self._affected_rows = self._read_query_result(unbuffered=unbuffered)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 724, in _read_query_result
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      result.read()
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 1069, in read
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      first_packet = self.connection._read_packet()
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 676, in _read_packet
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      packet.raise_for_error()
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/lib/python3.6/site-packages/pymysql/protocol.py", line 223, in raise_for_error
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      err.raise_mysql_exception(self._data)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/lib/python3.6/site-packages/pymysql/err.py", line 107, in raise_mysql_exception
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      raise errorclass(errno, errval)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****  pymysql.err.OperationalError: (1050, "Table 'archive_day_altimeter' already exists")
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****  During handling of the above exception, another exception occurred:
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****  Traceback (most recent call last):
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewxd.py", line 160, in main
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      engine = weewx.engine.StdEngine(config_dict)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 89, in __init__
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      self.loadServices(config_dict)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 157, in loadServices
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      obj = weeutil.weeutil.get_object(svc)(self, config_dict)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/wxservices.py", line 104, in __init__
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      initialize=True)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 755, in get_manager
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      self.manager_cache[data_binding] = open_manager(manager_dict, initialize)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 906, in open_manager
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      manager_dict['schema'])
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 244, in open_with_create
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      dbmanager = cls(connection, table_name=table_name, schema=schema)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 1051, in __init__
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      self._initialize_day_tables(schema)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 1113, in _initialize_day_tables
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      self._initialize_day_table(obs[0], obs[1].lower(), cursor)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 1136, in _initialize_day_table
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      cursor.execute(sql_create_str)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****    File "/usr/share/weewx/weedb/mysql.py", line 62, in guarded_fn
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****      raise klass(e)
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****  weedb.TableExistsError: (1050, "Table 'archive_day_altimeter' already exists")
Nov 28 13:58:17 web weewxd[3684]: CRITICAL __main__:     ****  Exiting.
Nov 28 13:58:17 web weewxd[3684]: Traceback (most recent call last):
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weedb/mysql.py", line 53, in guarded_fn
Nov 28 13:58:17 web weewxd[3684]:    return fn(*args, **kwargs)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weedb/mysql.py", line 247, in execute
Nov 28 13:58:17 web weewxd[3684]:    self.cursor.execute(mysql_string, tuple(sql_tuple))
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/lib/python3.6/site-packages/pymysql/cursors.py", line 163, in execute
Nov 28 13:58:17 web weewxd[3684]:    result = self._query(query)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/lib/python3.6/site-packages/pymysql/cursors.py", line 321, in _query
Nov 28 13:58:17 web weewxd[3684]:    conn.query(q)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 505, in query
Nov 28 13:58:17 web weewxd[3684]:    self._affected_rows = self._read_query_result(unbuffered=unbuffered)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 724, in _read_query_result
Nov 28 13:58:17 web weewxd[3684]:    result.read()
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 1069, in read
Nov 28 13:58:17 web weewxd[3684]:    first_packet = self.connection._read_packet()
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 676, in _read_packet
Nov 28 13:58:17 web weewxd[3684]:    packet.raise_for_error()
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/lib/python3.6/site-packages/pymysql/protocol.py", line 223, in raise_for_error
Nov 28 13:58:17 web weewxd[3684]:    err.raise_mysql_exception(self._data)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/lib/python3.6/site-packages/pymysql/err.py", line 107, in raise_mysql_exception
Nov 28 13:58:17 web weewxd[3684]:    raise errorclass(errno, errval)
Nov 28 13:58:17 web weewxd[3684]: pymysql.err.OperationalError: (1050, "Table 'archive_day_altimeter' already exists")
Nov 28 13:58:17 web weewxd[3684]: During handling of the above exception, another exception occurred:
Nov 28 13:58:17 web weewxd[3684]: Traceback (most recent call last):
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewxd.py", line 265, in <module>
Nov 28 13:58:17 web weewxd[3684]:    main()
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewxd.py", line 160, in main
Nov 28 13:58:17 web weewxd[3684]:    engine = weewx.engine.StdEngine(config_dict)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewx/engine.py", line 89, in __init__
Nov 28 13:58:17 web weewxd[3684]:    self.loadServices(config_dict)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewx/engine.py", line 157, in loadServices
Nov 28 13:58:17 web weewxd[3684]:    obj = weeutil.weeutil.get_object(svc)(self, config_dict)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewx/wxservices.py", line 104, in __init__
Nov 28 13:58:17 web weewxd[3684]:    initialize=True)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewx/manager.py", line 755, in get_manager
Nov 28 13:58:17 web weewxd[3684]:    self.manager_cache[data_binding] = open_manager(manager_dict, initialize)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewx/manager.py", line 906, in open_manager
Nov 28 13:58:17 web weewxd[3684]:    manager_dict['schema'])
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewx/manager.py", line 244, in open_with_create
Nov 28 13:58:17 web weewxd[3684]:    dbmanager = cls(connection, table_name=table_name, schema=schema)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewx/manager.py", line 1051, in __init__
Nov 28 13:58:17 web weewxd[3684]:    self._initialize_day_tables(schema)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewx/manager.py", line 1113, in _initialize_day_tables
Nov 28 13:58:17 web weewxd[3684]:    self._initialize_day_table(obs[0], obs[1].lower(), cursor)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weewx/manager.py", line 1136, in _initialize_day_table
Nov 28 13:58:17 web weewxd[3684]:    cursor.execute(sql_create_str)
Nov 28 13:58:17 web weewxd[3684]:  File "/usr/share/weewx/weedb/mysql.py", line 62, in guarded_fn
Nov 28 13:58:17 web weewxd[3684]:    raise klass(e)
Nov 28 13:58:17 web weewxd[3684]: weedb.TableExistsError: (1050, "Table 'archive_day_altimeter' already exists")
Nov 28 13:58:17 web systemd[1]: weewx.service: Main process exited, code=exited, status=1/FAILURE
Nov 28 13:58:17 web systemd[1]: weewx.service: Failed with result 'exit-code'.
Nov 28 13:58:20 web systemd[1]: libvirtd.service: Succeeded.

sreda, 27. november 2024 ob 18:09:49 UTC+1 je oseba vince napisala:

hajsek...@gmail.com

unread,
Dec 2, 2024, 12:19:51 PM12/2/24
to weewx-user
I have managed to add all what was missing in mysql not it work. It didn't worked when weewx create all new tables. But just cant get a graph to work, what else I miss here? http://vreme.povej.net
at the bottom is all mixed instead of graphs?

četrtek, 28. november 2024 ob 13:59:27 UTC+1 je oseba hajsek...@gmail.com napisala:

hajsek...@gmail.com

unread,
Dec 11, 2024, 2:10:54 PM12/11/24
to weewx-user
Can someone please help me please and tell me which file I need to edit to add extraTemp sensor to get graph? Two works but third doesn't show up.
Thank you

ponedeljek, 2. december 2024 ob 18:19:51 UTC+1 je oseba hajsek...@gmail.com napisala:

hajsek...@gmail.com

unread,
Dec 22, 2024, 4:56:35 AM12/22/24
to weewx-user
I have turned around all files but still can't find what is missing also mysql tables are all in.
I just like to add a graph 4 and humidity graphs for all four sensors. at the bottom is JUD instead of graph.
https://vreme.povej.net/

2024-12-22 10_55_48-please - Iskanje Google – Mozilla Firefox.png
sreda, 11. december 2024 ob 20:10:54 UTC+1 je oseba hajsek...@gmail.com napisala:

Tom Keffer

unread,
Dec 22, 2024, 1:49:41 PM12/22/24
to weewx...@googlegroups.com
Check with the author of the skin. Which graphs to include is decided by the skin, not by weewx.

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/weewx-user/72699a50-3db4-41d4-a619-644fa5ae8d77n%40googlegroups.com.

hajsek...@gmail.com

unread,
Dec 23, 2024, 3:16:45 AM12/23/24
to weewx-user
Thank you for info.
I have checked all files in that skin and all have extratemp3 and extratemp4 in it. But I get only data for extratemp3. That's why I thought it must be something with weewx.

nedelja, 22. december 2024 ob 19:49:41 UTC+1 je oseba Tom Keffer napisala:

hajsek...@gmail.com

unread,
Dec 23, 2024, 10:43:17 AM12/23/24
to weewx-user
I tested it with default skin "Standard" but is the same no graph for extratemp4. Fourth graph is not show up.
And I get this error in logfile.
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine: Caught unrecoverable exception in generator 'weewx.imagegenerator.ImageGenerator'
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****  extraTemp4
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****  Traceback (most recent call last):
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 248, in run
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****      obj.start()
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 465, in start
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****      self.run()
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/imagegenerator.py", line 37, in run
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****      self.gen_images(self.gen_ts)
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/imagegenerator.py", line 102, in gen_images
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****      self.image_dict[timespan][plotname])
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/imagegenerator.py", line 242, in gen_plot
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****      **option_dict)
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/xtypes.py", line 125, in get_series
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****      raise weewx.UnknownType(msg)
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****  weewx.UnknownType: extraTemp4
Dec 23 16:39:16 web weewxd[1494989]: ERROR weewx.reportengine:         ****  Generator terminated
Dec 23 16:39:16 web weewxd[1494989]: INFO weewx.reportengine: Copied 0 files to /var/www/html/weewx2024-12-23 16_20_27-Domzale – Mozilla Firefox.png

ponedeljek, 23. december 2024 ob 09:16:45 UTC+1 je oseba hajsek...@gmail.com napisala:

Jeff A. D.

unread,
Dec 23, 2024, 12:11:29 PM12/23/24
to weewx-user
I don't know if this applies to you or not, I'm probably the least qualified one to respond so far, and I may have missed if this was already mentioned.

But I'm using Seasons skin, and under /etc/weewx/skins/Seasons/index.html.tmpl has 

            #if $day.extraTemp1.has_data or $day.extraTemp2.has_data or $day.extraTemp3.has_data
            <img src="daytemp.png"      alt="$obs.label.extraTemp1" />
            <img src="daytemp1.png"      alt="$obs.label.extraTemp2" />
            #end if

and same thing is pretty much repeated for week, day, and year.  I think that's what tells it to generate or add the graph.

So I think you may be missing something in an html template?

If I can't get something to work I basically go through all the files and see what I'm missing.

w0ep Chris Howard

unread,
Dec 23, 2024, 12:40:45 PM12/23/24
to weewx...@googlegroups.com
It looks like it is complaining about line 125 in file xtypes.py



w0ep Chris Howard

unread,
Dec 23, 2024, 12:54:02 PM12/23/24
to weewx...@googlegroups.com

I looked at xtypes.py.  The problem is in function called get_series.
The error is actually right there in the error stack trace   "Unknown Type".
That is not extremely helpful.  But I assume that means the system is choking on some data that is
not in the format expected.   I don't know anything about xtypes as a thing, or if it is a special thing.
But just the idea that it is unexpected data makes me suspicious that there is something messed up
in the database.   If it were my system I would probably try to look at the data and see if there
are weird characters in amongst the number and letters.  Maybe some field expected to be number has
some words in it.  Or maybe there are some records that got mangled or are only partial.

If that didn't work.  I would follow the stack trace and try to figure out what is going on and
maybe build an understanding of how the data flows through the code.

It is possible that whatever capability xtypes provides is not working.  So if the data is OK,
that may be an angle to explore.  But if the system worked at one time and now does not, I would
expect a data problem.



On 12/23/24 11:11, Jeff A. D. wrote:

hajsek...@gmail.com

unread,
Dec 23, 2024, 2:36:55 PM12/23/24
to weewx-user

Ok thank you I will check mysql database. This didn't worked before because I add new temp and humidity sensors
maybe someone who make this code can specify more what to look?
ponedeljek, 23. december 2024 ob 18:54:02 UTC+1 je oseba w0ep Chris Howard napisala:

gjr80

unread,
Dec 23, 2024, 5:56:59 PM12/23/24
to weewx-user
I really think you need to take a more systematic approach to tracking down the problem. Looking at the end product (the web page) and seeing a missing plot is useful for noticing a problem, but in itself does not point you to the source of the error. I would be troubleshooting as follows:

1. Is WeeWX seeing data in field extraTemp4. Run WeeWX directly so you see loop packets (LOOP:) and archive records (REC:) on the console. Let WeeWX run until you see at least one REC: line. Did you see extraTemp4 in any loop packets and archive records? If so that means WeeWX is successfully obtaining extraTemp4 data from your station/driver. If not you need to troubleshoot your station/driver to find out why WeeWX is not seeing extraTemp4 data.

2. Is extraTemp4 data being saved to the database. Have a look at the data in the archive table of your database, is the field extraTemp4 there? Does it contain numeric data? If the answer to both is yes WeeWX is saving extraTemp4 data to database, if not add extraTemp4 to the database schema using weectl database.

3. Does the skin have a suitable plot generation definition with extraTemp4 data. Have a look at the [ImageGenerator] stanza in the skin config file for your skin, is there a stanza definition there for a suitable plot using extraTemp4? Is the stanza active or disabled/commented out?

4. Is the extraTemp4 plot file being generated? Have a look on your WeeWX system (not web server) to see if the file was generated. Where it will be located will depend on the HTML_ROOT setting being used, but if your skin is generating other plots without problem you should find it with them.

5. If you have a web server is the extraTemp4 plot file being uploaded to the web server from the WeeWX machine or maybe copied to another directory if both web server and WeeWX machine are the same machine (if this is the case there may be no copying but rather just use of a symlink to the original plot files).

If you work through systematically you should be able to identify the general area of the fault and then home in with more detailed checks.

Another tip, be extremely careful with case. Within WeeWX (and python) case matters; 'extratemp4' is not the same as 'extraTemp4'.

Gary
Message has been deleted

hajsek...@gmail.com

unread,
Jan 7, 2025, 2:22:49 PM1/7/25
to weewx-user
Thank you for detailed help for solving this.
1. I did run weewx directly and get this below, there is extratemp4 visible.
I also see that on my website it is called JUD Temperature, this is extratemp4., but no graph.
2. Here is print screen from database for extratemp4
https://file.si/lnDj/2025-01-07-19-0942-phpmyadminwebpovejnet-localhost-weewx-archivedayextratemp4-phpmyadmi.png
3. I tested with default skin (standard) and it was the same problem
4. Is the extraTemp4 plot file being generated? For this one I don't know which files do you mean and where I use Almalinux8.
5. Extratemp4 is visible on the left side column on my website but no graphs. Weewx and web server all is on the same server.
I always take care on linux to use names of files as they are some capital letters and some not, I first checked for this extraTemp4 and all are ok.
But still don't know which plot files do you talk about, where that is? I use Almalinux8.
Also after I tested Standard skin, my skin stops to work graphs stop to update.
https://file.si/QxY6/2025-01-07-19-3938-domzale-current-weather-conditions-mozilla-firefox.png
Here are  extra temperatures from 1 to 4.
https://file.si/WxR4/2025-01-07-19-4114-domzale-current-weather-conditions-mozilla-firefox.png
and this is website vreme.povej.net
Still have no clue what is going on and why?

Damian

Using configuration file /etc/weewx/weewx.conf
LOOP:   2025-01-07 18:59:08 CET (1736272748) 'altimeter': '973.5669843206728', 'appTemp': '7.15646528637221', 'barometer': '973.9985630312293', 'cloudbase': '313.9680036411376', 'dateTime': '1736272748', 'dewpoint': '7.57484649797314', 'ET': 'None', 'extraHumid1': '59.0', 'extraHumid2': '45.0', 'extraHumid3': '56.0', 'extraHumid4': '71.0', 'extraTemp1': '21.277777777777775', 'extraTemp2': '21.999999999999996', 'extraTemp3': '18.499999999999996', 'extraTemp4': '22.5', 'heatindex': '7.135000000000002', 'humidex': '7.963603398131939', 'inDewpoint': '12.673615678590135', 'inHumidity': '58.0', 'inTemp': '21.277777777777775', 'maxSolarRad': '0.0', 'outHumidity': '99.0', 'outTemp': '7.722222222222221', 'pressure': '939.5456736986429', 'radiation': '0.0', 'rain': 'None', 'rainRate': '1.1938', 'usUnits': '16', 'UV': '0.0', 'windchill': '7.722222222222221', 'windDir': 'None', 'windGust': '0.0', 'windGustDir': 'None', 'windrun': 'None', 'windSpeed': '0.0'
LOOP:   2025-01-07 19:00:36 CET (1736272836) 'altimeter': '973.6678578483659', 'appTemp': '7.15646528637221', 'barometer': '974.1001623250087', 'cloudbase': '313.9680036411376', 'dateTime': '1736272836', 'dewpoint': '7.57484649797314', 'ET': 'None', 'extraHumid1': '59.0', 'extraHumid2': '45.0', 'extraHumid3': '56.0', 'extraHumid4': '71.0', 'extraTemp1': '21.277777777777775', 'extraTemp2': '21.999999999999996', 'extraTemp3': '18.499999999999996', 'extraTemp4': '22.5', 'heatindex': '7.135000000000002', 'humidex': '7.963603398131939', 'inDewpoint': '12.673615678590135', 'inHumidity': '58.0', 'inTemp': '21.277777777777775', 'maxSolarRad': '0.0', 'outHumidity': '99.0', 'outTemp': '7.722222222222221', 'pressure': '939.6436791583471', 'radiation': '0.0', 'rain': '0.0', 'rainRate': '0.6096', 'usUnits': '16', 'UV': '0.0', 'windchill': '7.722222222222221', 'windDir': 'None', 'windGust': '0.0', 'windGustDir': 'None', 'windrun': 'None', 'windSpeed': '0.0'
REC:    2025-01-07 19:00:00 CET (1736272800) 'altimeter': '973.5669843206728', 'appTemp': '7.15646528637221', 'barometer': '973.9985630312293', 'cloudbase': '313.9680036411376', 'dateTime': '1736272800', 'dewpoint': '7.57484649797314', 'ET': '0.0', 'extraHumid1': '59.0', 'extraHumid2': '45.0', 'extraHumid3': '56.0', 'extraHumid4': '71.0', 'extraTemp1': '21.277777777777775', 'extraTemp2': '21.999999999999996', 'extraTemp3': '18.499999999999996', 'extraTemp4': '22.5', 'heatindex': '7.135000000000002', 'humidex': '7.963603398131939', 'inDewpoint': '12.673615678590135', 'inHumidity': '58.0', 'inTemp': '21.277777777777775', 'interval': '1.0', 'maxSolarRad': '0.0', 'outHumidity': '99.0', 'outTemp': '7.722222222222221', 'pressure': '939.5456736986429', 'radiation': '0.0', 'rain': 'None', 'rainRate': '1.1938', 'usUnits': '16', 'UV': '0.0', 'windchill': '7.722222222222221', 'windDir': 'None', 'windGust': '0.0', 'windGustDir': 'None', 'windrun': '0.0', 'windSpeed': '0.0'
Exception in thread XTideThread:


Traceback (most recent call last):
  File "/usr/share/weewx/user/forecast.py", line 1196, in do_forecast
    records = self.get_forecast(event)
  File "/usr/share/weewx/user/forecast.py", line 3818, in get_forecast
    self.location, dur=self.duration, prog=self.tideprog)
  File "/usr/share/weewx/user/forecast.py", line 3919, in generate
    if line.startswith('Indexing'):
TypeError: startswith first arg must be bytes or a tuple of bytes, not str



During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/python3.6/threading.py", line 937, in _bootstrap_inner
    self.run()
  File "/usr/share/weewx/user/forecast.py", line 968, in run
    self._target(*self._args)
  File "/usr/share/weewx/user/forecast.py", line 1212, in do_forecast
    logerr('%s: forecast failure: %s, dbm_dict: %s' % (self.method_id, e, dbm_dict))
UnboundLocalError: local variable 'dbm_dict' referenced before assignment



Traceback (most recent call last):
  File "/usr/share/weewx/weewx/reportengine.py", line 248, in run
    obj.start()


  File "/usr/share/weewx/weewx/reportengine.py", line 465, in start
    self.run()


  File "/usr/share/weewx/weewx/imagegenerator.py", line 37, in run
    self.gen_images(self.gen_ts)


  File "/usr/share/weewx/weewx/imagegenerator.py", line 102, in gen_images
    self.image_dict[timespan][plotname])


  File "/usr/share/weewx/weewx/imagegenerator.py", line 242, in gen_plot
    **option_dict)


  File "/usr/share/weewx/weewx/xtypes.py", line 125, in get_series
    raise weewx.UnknownType(msg)
weewx.UnknownType: extraTemp4
LOOP:   2025-01-07 19:01:52 CET (1736272912) 'altimeter': '973.7687313190107', 'appTemp': '7.15646528637221', 'barometer': '974.2017616187878', 'cloudbase': '313.9680036411376', 'dateTime': '1736272912', 'dewpoint': '7.57484649797314', 'ET': 'None', 'extraHumid1': '59.0', 'extraHumid2': '44.0', 'extraHumid3': '56.0', 'extraHumid4': '72.0', 'extraTemp1': '21.277777777777775', 'extraTemp2': '21.999999999999996', 'extraTemp3': '18.499999999999996', 'extraTemp4': '22.61111111111111', 'heatindex': '7.135000000000002', 'humidex': '7.963603398131939', 'inDewpoint': '12.673615678590135', 'inHumidity': '58.0', 'inTemp': '21.277777777777775', 'maxSolarRad': '0.0', 'outHumidity': '99.0', 'outTemp': '7.722222222222221', 'pressure': '939.7416846180513', 'radiation': '0.0', 'rain': '0.0', 'rainRate': '0.6096', 'usUnits': '16', 'UV': '0.0', 'windchill': '7.722222222222221', 'windDir': 'None', 'windGust': '0.0', 'windGustDir': 'None', 'windrun': 'None', 'windSpeed': '0.0'
REC:    2025-01-07 19:01:00 CET (1736272860) 'altimeter': '973.6678578483659', 'appTemp': '7.15646528637221', 'barometer': '974.1001623250087', 'cloudbase': '313.9680036411376', 'dateTime': '1736272860', 'dewpoint': '7.57484649797314', 'ET': '0.0', 'extraHumid1': '59.0', 'extraHumid2': '45.0', 'extraHumid3': '56.0', 'extraHumid4': '71.0', 'extraTemp1': '21.277777777777775', 'extraTemp2': '21.999999999999996', 'extraTemp3': '18.499999999999996', 'extraTemp4': '22.5', 'heatindex': '7.135000000000002', 'humidex': '7.963603398131939', 'inDewpoint': '12.673615678590135', 'inHumidity': '58.0', 'inTemp': '21.277777777777775', 'interval': '1.0', 'maxSolarRad': '0.0', 'outHumidity': '99.0', 'outTemp': '7.722222222222221', 'pressure': '939.6436791583471', 'radiation': '0.0', 'rain': '0.0', 'rainRate': '0.6096', 'usUnits': '16', 'UV': '0.0', 'windchill': '7.722222222222221', 'windDir': 'None', 'windGust': '0.0', 'windGustDir': 'None', 'windrun': '0.0', 'windSpeed': '0.0'
Exception in thread XTideThread:


Traceback (most recent call last):
  File "/usr/share/weewx/user/forecast.py", line 1196, in do_forecast
    records = self.get_forecast(event)
  File "/usr/share/weewx/user/forecast.py", line 3818, in get_forecast
    self.location, dur=self.duration, prog=self.tideprog)
  File "/usr/share/weewx/user/forecast.py", line 3919, in generate
    if line.startswith('Indexing'):
TypeError: startswith first arg must be bytes or a tuple of bytes, not str



During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/python3.6/threading.py", line 937, in _bootstrap_inner
    self.run()
  File "/usr/share/weewx/user/forecast.py", line 968, in run
    self._target(*self._args)
  File "/usr/share/weewx/user/forecast.py", line 1212, in do_forecast
    logerr('%s: forecast failure: %s, dbm_dict: %s' % (self.method_id, e, dbm_dict))
UnboundLocalError: local variable 'dbm_dict' referenced before assignment

LOOP:   2025-01-07 19:03:08 CET (1736272988) 'altimeter': '973.5669843206728', 'appTemp': '7.15646528637221', 'barometer': '973.9985630312293', 'cloudbase': '313.9680036411376', 'dateTime': '1736272988', 'dewpoint': '7.57484649797314', 'ET': 'None', 'extraHumid1': '58.0', 'extraHumid2': '45.0', 'extraHumid3': '56.0', 'extraHumid4': '72.0', 'extraTemp1': '21.277777777777775', 'extraTemp2': '21.999999999999996', 'extraTemp3': '18.499999999999996', 'extraTemp4': '22.722222222222225', 'heatindex': '7.135000000000002', 'humidex': '7.963603398131939', 'inDewpoint': '12.77746494243907', 'inHumidity': '58.0', 'inTemp': '21.38888888888889', 'maxSolarRad': '0.0', 'outHumidity': '99.0', 'outTemp': '7.722222222222221', 'pressure': '939.5456736986429', 'radiation': '0.0', 'rain': '0.07620000000000289', 'rainRate': '1.1938', 'usUnits': '16', 'UV': '0.0', 'windchill': '7.722222222222221', 'windDir': 'None', 'windGust': '0.0', 'windGustDir': 'None', 'windrun': 'None', 'windSpeed': '0.0'
REC:    2025-01-07 19:02:00 CET (1736272920) 'altimeter': '973.7687313190107', 'appTemp': '7.15646528637221', 'barometer': '974.2017616187878', 'cloudbase': '313.9680036411376', 'dateTime': '1736272920', 'dewpoint': '7.57484649797314', 'ET': '0.0', 'extraHumid1': '59.0', 'extraHumid2': '44.0', 'extraHumid3': '56.0', 'extraHumid4': '72.0', 'extraTemp1': '21.277777777777775', 'extraTemp2': '21.999999999999996', 'extraTemp3': '18.499999999999996', 'extraTemp4': '22.61111111111111', 'heatindex': '7.135000000000002', 'humidex': '7.963603398131939', 'inDewpoint': '12.673615678590135', 'inHumidity': '58.0', 'inTemp': '21.277777777777775', 'interval': '1.0', 'maxSolarRad': '0.0', 'outHumidity': '99.0', 'outTemp': '7.722222222222221', 'pressure': '939.7416846180513', 'radiation': '0.0', 'rain': '0.0', 'rainRate': '0.6096', 'usUnits': '16', 'UV': '0.0', 'windchill': '7.722222222222221', 'windDir': 'None', 'windGust': '0.0', 'windGustDir': 'None', 'windrun': '0.0', 'windSpeed': '0.0'
Exception in thread XTideThread:


Traceback (most recent call last):
  File "/usr/share/weewx/user/forecast.py", line 1196, in do_forecast
    records = self.get_forecast(event)
  File "/usr/share/weewx/user/forecast.py", line 3818, in get_forecast
    self.location, dur=self.duration, prog=self.tideprog)
  File "/usr/share/weewx/user/forecast.py", line 3919, in generate
    if line.startswith('Indexing'):
TypeError: startswith first arg must be bytes or a tuple of bytes, not str



During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/python3.6/threading.py", line 937, in _bootstrap_inner
    self.run()
  File "/usr/share/weewx/user/forecast.py", line 968, in run
    self._target(*self._args)
  File "/usr/share/weewx/user/forecast.py", line 1212, in do_forecast
    logerr('%s: forecast failure: %s, dbm_dict: %s' % (self.method_id, e, dbm_dict))
UnboundLocalError: local variable 'dbm_dict' referenced before assignment

THIS IS FROM LOGFILE
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Initializing weewxd version 5.1.0
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Command line: /usr/share/weewx/weewxd.py /etc/weewx/weewx.conf
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Using Python: 3.6.8 (default, Dec  5 2024, 08:08:09) #012[GCC 8.5.0 20210514 (Red Hat 8.5.0-22)]
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Located at:   /usr/bin/python3
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Platform:     Linux-4.18.0-553.33.1.el8_10.x86_64-x86_64-with-almalinux-8.10-Cerulean_Leopard
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Locale:       'sl_SI.UTF-8'
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Entry path:   /usr/share/weewx/weewxd.py
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: WEEWX_ROOT:   /etc/weewx
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Config file:  /etc/weewx/weewx.conf
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: User module:  /etc/weewx/bin/user
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Debug:        0
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: User:         weewx
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Group:        weewx
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Groups:       weewx
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.engine: Loading station type Interceptor (user.interceptor)
Jan  7 19:57:04 web weewxd[3358]: INFO user.interceptor: driver version is 0.60
Jan  7 19:57:04 web weewxd[3358]: INFO user.interceptor: device type: ecowitt-client
Jan  7 19:57:04 web weewxd[3358]: INFO user.interceptor: hardware name: weatherstation via interceptor
Jan  7 19:57:04 web weewxd[3358]: INFO user.interceptor: mode is listen
Jan  7 19:57:04 web weewxd[3358]: INFO user.interceptor: listen on :9900
Jan  7 19:57:04 web weewxd[3358]: INFO user.interceptor: sensor map: {'pressure': 'pressure', 'barometer': 'barometer', 'outHumidity': 'humidity_out', 'inHumidity': 'humidity_in', 'outTemp': 'temperature_out', 'inTemp': 'temperature_in', 'windSpeed': 'wind_speed', 'windGust': 'wind_gust', 'windDir': 'wind_dir', 'windGustDir': 'wind_gust_dir', 'radiation': 'solar_radiation', 'dewpoint': 'dewpoint', 'windchill': 'windchill', 'rain': 'rain', 'rainRate': 'rain_rate', 'UV': 'uv', 'txBatteryStatus': 'battery', 'extraTemp1': 'temperature_1', 'extraTemp2': 'temperature_2', 'extraTemp3': 'temperature_3', 'extraHumid1': 'humidity_1', 'extraHumid2': 'humidity_2', 'soilTemp1': 'soil_temperature_1', 'soilTemp2': 'soil_temperature_2', 'soilMoist1': 'soil_moisture_1', 'soilMoist2': 'soil_moisture_2', 'soilMoist3': 'soil_moisture_3', 'soilMoist4': 'soil_moisture_4', 'leafWet1': 'leafwetness_1', 'leafWet2': 'leafwetness_2', 'pm2_5': 'pm2_5', 'extraTemp4': 'temperature_4', 'extraTemp5': 'temperature_5', 'extraTemp6': 'temperature_6', 'extraTemp7': 'temperature_7', 'extraTemp8': 'temperature_8', 'extraHumid3': 'humidity_3', 'extraHumid4': 'humidity_4', 'extraHumid5': 'humidity_5', 'extraHumid6': 'humidity_6', 'extraHumid7': 'humidity_7', 'extraHumid8': 'humidity_8', 'soilTemp3': 'soil_temperature_3', 'soilTemp4': 'soil_temperature_4'}
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.engine: StdConvert target unit is 0x10
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.wxservices: StdWXCalculate will use data binding wx_binding
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.engine: Archive will use data binding wx_binding
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.engine: Record generation will be attempted in 'software'
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.engine: Using archive interval of 60 seconds (software record generation)
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: Zambretti: forecast version 3.4.0b11
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: Zambretti: interval=600 max_age=604800 winddir_period=1800 pressure_period=10800 hemisphere=MIDDLE lower_pressure=950.0 upper_pressure=1050.0
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: NWS: forecast version 3.4.0b11
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: NWS: location ID (lid) is not specified
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: NWS: forecast office ID (foid) is not specified
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: NWS: forecast will not be run
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: WU: forecast version 3.4.0b11
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: WU: interval=10800 max_age=604800 api_key=XXXXXXXXXXXXXXXXXXXXXXXXXXXX5f25 geocode=46.130080,14.600500
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: OWM: forecast version 3.4.0b11
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: OWM: interval=10800 max_age=604800 api_key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXc6e1 location=46.130080,14.600500 fc=5day3hour
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: UKMO: forecast version 3.4.0b11
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: UKMO: API key (api_key) is not specified
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: UKMO: forecast will not be run
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: Aeris: forecast version 3.4.0b11
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: Aeris: client identifier (client_id) is not specified
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: Aeris: client secret (client_secret) is not specified
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: Aeris: forecast will not be run
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: WWO: forecast version 3.4.0b11
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: WWO: API key (api_key) is not specified
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: WWO: forecast will not be run
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: DS: forecast version 3.4.0b11
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: DS: API key (api_key) is not specified
Jan  7 19:57:04 web weewxd[3358]: ERROR user.forecast: MainThread: DS: forecast will not be run
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: XTide: forecast version 3.4.0b11
Jan  7 19:57:04 web weewxd[3358]: INFO user.forecast: MainThread: XTide: interval=1209600 max_age=2419200 location='Koper (e.g., Boston)' duration=2419200
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.restx: StationRegistry: Station will be registered.
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.restx: Wunderground-PWS: Data for station IDOMALE9 will be posted
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.restx: PWSweather: Posting not enabled.
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.restx: CWOP: Posting not enabled.
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.restx: WOW: Posting not enabled.
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.restx: AWEKAS: Posting not enabled.
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.engine: 'pyephem' detected, extended almanac data is available
Jan  7 19:57:04 web weewxd[3358]: INFO user.rtgd: version is 0.5.5
Jan  7 19:57:04 web weewxd[3358]: INFO user.rtgd: RealTimeGaugeData scroller text will use a fixed string
Jan  7 19:57:04 web weewxd[3358]: INFO user.rtgd: gauge-data.txt will not be exported.
Jan  7 19:57:04 web weewxd[3358]: INFO user.rtgd: '/var/www/html/weewx/gauge-data.txt' wil be generated. min_interval is None
Jan  7 19:57:04 web weewxd[3358]: INFO __main__: Starting up weewx version 5.1.0
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.engine: Using binding 'wx_binding' to database 'weewx'
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.manager: Starting backfill of daily summaries
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.manager: Daily summaries up to date
Jan  7 19:57:04 web weewxd[3358]: INFO weewx.engine: Starting main packet loop.
Jan  7 19:57:11 web systemd-logind[778]: New session 4 of user root.
Jan  7 19:57:11 web systemd[1]: Started Session 4 of user root.
Jan  7 19:57:21 web systemd[1]: systemd-localed.service: Succeeded.
Jan  7 19:57:21 web systemd[1]: systemd-hostnamed.service: Succeeded.
Jan  7 19:57:22 web systemd[1]: fprintd.service: Succeeded.
Jan  7 19:59:36 web weewxd[4052]: INFO weewx.engine: 'pyephem' detected, extended almanac data is available
Jan  7 19:59:36 web weewxd[4052]: INFO user.rtgd: version is 0.5.5
Jan  7 19:59:36 web weewxd[4052]: INFO user.rtgd: RealTimeGaugeData scroller text will use a fixed string
Jan  7 19:59:36 web weewxd[4052]: INFO user.rtgd: gauge-data.txt will not be exported.
Jan  7 19:59:36 web weewxd[4052]: INFO user.rtgd: '/var/www/html/weewx/gauge-data.txt' wil be generated. min_interval is None
Jan  7 19:59:36 web weewxd[4052]: INFO __main__: Starting up weewx version 5.1.0
Jan  7 19:59:36 web weewxd[4052]: INFO weewx.engine: Using binding 'wx_binding' to database 'weewx'
Jan  7 19:59:36 web weewxd[4052]: INFO weewx.manager: Starting backfill of daily summaries
Jan  7 19:59:36 web weewxd[4052]: INFO weewx.manager: Daily summaries up to date
Jan  7 19:59:36 web weewxd[4052]: INFO weewx.engine: Starting main packet loop.
Jan  7 20:18:21 web weewxd[5921]: INFO weewx.manager: Added record 2025-01-07 20:18:00 CET (1736277480) to database 'weewx'
Jan  7 20:18:22 web weewxd[5921]: INFO weewx.manager: Added record 2025-01-07 20:18:00 CET (1736277480) to daily summary in 'weewx'
Jan  7 20:18:22 web weewxd[5921]: INFO user.forecast: XTideThread: XTide: generating tides from 2025-01-07 00:00:00 CET (1736204400) to 2025-02-04 00:00:00 CET (1738623600)
Jan  7 20:18:22 web weewxd[5921]: INFO user.forecast: XTideThread: XTide: got no tidal events
Jan  7 20:18:22 web weewxd[5921]: INFO user.forecast: ZambrettiThread: Zambretti: skipping forecast: (1140, "In aggregated query without GROUP BY, expression #2 of SELECT list contains nonaggregated column 'weewx.archive.barometer'; this is incompatible with sql_mode=only_full_group_by")
Jan  7 20:18:22 web weewxd[5921]: INFO weewx.restx: Wunderground-PWS: Published record 2025-01-07 20:18:00 CET (1736277480)
Jan  7 20:18:23 web weewxd[5921]: INFO weewx.cheetahgenerator: Generated 8 files for report SeasonsReport in 0.86 seconds
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine: Caught unrecoverable exception in generator 'weewx.imagegenerator.ImageGenerator'
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****  extraTemp4
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****  Traceback (most recent call last):
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 248, in run
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****      obj.start()
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 465, in start
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****      self.run()
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/imagegenerator.py", line 37, in run
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****      self.gen_images(self.gen_ts)
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/imagegenerator.py", line 102, in gen_images
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****      self.image_dict[timespan][plotname])
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/imagegenerator.py", line 242, in gen_plot
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****      **option_dict)
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/xtypes.py", line 125, in get_series
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****      raise weewx.UnknownType(msg)
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****  weewx.UnknownType: extraTemp4
Jan  7 20:18:23 web weewxd[5921]: ERROR weewx.reportengine:         ****  Generator terminated
Jan  7 20:18:23 web weewxd[5921]: INFO weewx.reportengine: Copied 0 files to /var/www/html/weewx
Jan  7 20:18:23 web weewxd[5921]: INFO weewx.cheetahgenerator: Generated 1 files for report MobileReport in 0.02 seconds
Jan  7 20:18:23 web weewxd[5921]: INFO weewx.imagegenerator: Generated 4 images for report MobileReport in 0.19 seconds
Jan  7 20:18:23 web weewxd[5921]: INFO weewx.reportengine: Copied 0 files to /var/www/html/weewx/mobile
Jan  7 20:18:23 web /weewxd.py[5921]: historygenerator.py: Generated 8 tables in 0.25 seconds
Jan  7 20:19:01 web systemd[1]: Started Checkmk agent (PID 822/UID 971).
Jan  7 20:19:03 web systemd[1]: check-m...@23-822-971.service: Succeeded.


ponedeljek, 23. december 2024 ob 23:56:59 UTC+1 je oseba gjr80 napisala:

vince

unread,
Jan 7, 2025, 5:41:26 PM1/7/25
to weewx-user
Your forecast extension is throwing errors. See if disabling that helps any.

gjr80

unread,
Jan 7, 2025, 11:33:21 PM1/7/25
to weewx-user
OK. The direct WeeWX runs show that your driver is emitting extraTemp4 and it is included in both loop packets and archive records. extraTemp4 also appears to be saved to database - your page shows aggregates for 'JUD', if extraTemp4 is being displayed as 'JUD' then that strongly suggests that extraTemp4 data is being saved to database (note the 'best' test for whether extraTemp4 is being saved to database is to query the archive table in your database to confirm the field extraTemp4 exists and is being populated). I think we can assume extraTemp4 data is making it into the database where it should. One other thing to note - displaying the current value of an observation on a web page does not necessarilly mean it is saved to database.

As for a plot definition you need to look in the skin config file (nominally skin.conf) in the skin directory for the skin concerned. For the Seasons skin on your system that should be /etc/weewx/skins/Seasons/skin.conf. (I note that your earlier weewx.conf had the [StdReport] [[SeasonsReport]] using skin = sofaskin,  this implies the SeasonsReport will use the skin in /etc/weewx/skins/sofaskin and your skin config will be /etc/weewx/skins/sofaskin/skin.conf.) Within skin.conf you will find a stanza [ImageGenerator], under [ImageGenerator] you will find a stanza [[dayimages]], under [[dayimages]] you will find numerous third level stanzas ([[[ ]]]), each of these stanzas defines a day plot. The text in between the third level square braces (ie [[[ ]]]) determines the image file name and the entries in the fourth level stanzas under a given third level stanza define the fields to be plotted. So the following stanza

[[[temps]]]
    [[[[extraTemp1]]]]
    [[[[extraTemp2]]]]

will create plot named temps.jpg containing a plot of fields extraTemp1 and extraTemp2. Similar thing for week, month and year plots - you will find [[weekimages]], [[monthimages]] and [[yearimages]] stanzas that define these plots.

In your case look for a third level stanza that has a fourth level entry for extraTemp4. You can then work out the plot file name from the third level stanza containing [[[[extraTemp4]]]]. The location of the plots depends on a number of config settings, in your case I suspect you will find them in /var/www/html/weewx. Given the error message above I suspect you will find the extraTemp4 plot is not being generated.

Probably best for you to post a copy of the skin config file here in its entirety,. There should be nothing sensitive in the file (but do check), though I am not familiar with the details in the sofa skin skin config file (if that is indeed the skin being used).

Also, can you edit weewx.conf, set debug =1, save weewx.conf then restart WeeWX and post the log showing the full WeeWX startup through until the (expected) extraTemp4 error. This will show details of exactly what skin/skin config/file locations/names are being used. 

Gary

hajsek...@gmail.com

unread,
Jan 8, 2025, 2:06:00 AM1/8/25
to weewx-user
thank you alot Gary for this detailed explanation, I learned alot from this.

I have checked database again and compare it with extraTemp3 and 2 and it looks like it is populating. here are images.
I have edited skin.conf whole of it and also all files *.html.tmpl for extraTemp4.
Also there exist this plot [[[[extraTemp4]]]]
here are also files in my web folder. And skin files
https://file.si/yX8g/2025-01-08-07-5722-weewx-root194249178188-winscp.png
thank you again


sreda, 8. januar 2025 ob 05:33:21 UTC+1 je oseba gjr80 napisala:
arhiv za google.rar

gjr80

unread,
Jan 9, 2025, 7:37:29 PM1/9/25
to weewx-user
I see nothing obviously wrong, though based on your website you also have a problems with extraTemp2 and extraTemp3 plots. Let's take it from the top again and get a complete picture of everything that is going on now as well as how WeeWX is configured. Could you please do the following:

1. Obtain and post a new startup log extract. Edit weewx.conf, set debug = 1, save weewx.conf and restart WeeWX. Let WeeWX run for at least two archive/report cycles and then take a log extract showing the full WeeWX startup through until the first two archive/report cycles are complete. Please don't edit the log extract and please post as a text file; don't post as an image; images are difficult to read on small screens and difficult to search. You may find this wiki page entry helpful.

2. I know you posted a weectl debug report earlier but let's see another up to date one.

3. I have still not seen any direct evidence that the archive table extraTemp4 field is being populated with data. The archive_day_extraTemp4 table is the extraTemp4 daily summary table; whilst its existence strongly suggests the extraTemp4 field in the archive table is being populated it is not conclusive. The image generator will use the extraTemp4 field in the archive table - perhaps you might want to have a look in the archive table in your database and ensure the extraTemp4 field is being populated. I believe you are using MySQL/MariaDB for you database, so if it is easier to post a myphpadmin screenshot do so, but please no other images :)

Gary

hajsek...@gmail.com

unread,
Jan 13, 2025, 7:19:41 AM1/13/25
to weewx-user
Hi
Thank you for your answer, here is debug log and also from phpmyadmin screenshot.
You are right there is no column  extraTemp4 in archive. How to solve that?
regards
Damian
2025-01-13 13_17_02-phpmyadminweb.povej.net _ localhost _ weewx _ archive _ phpMyAdmin 5.2.0-1.el8.r.png

petek, 10. januar 2025 ob 01:37:29 UTC+1 je oseba gjr80 napisala:
weewx_log.txt

hajsek...@gmail.com

unread,
Jan 20, 2025, 7:11:48 AM1/20/25
to weewx-user
Hi
I have add a column for extraTemp4 in archive table now I have graph for that. But I can't manage to add gaprh for extraHumd1, extraHumd2, extraHumd3, extraHumd4.
Also this two graphs still doesn't update.
I appreciate any idea what to do.
regards
Damian

ponedeljek, 13. januar 2025 ob 13:19:41 UTC+1 je oseba hajsek...@gmail.com napisala:
2025-01-20 13_09_03-Domzale Current Weather Conditions – Mozilla Firefox.png

gjr80

unread,
Jan 27, 2025, 4:25:56 PM1/27/25
to weewx-user
My apologies, I missed your last two posts.

The lack of an extraTemp4 field in your archive would certainly cause the problem and symptoms you were seeing. Sounds like that is fixed.

For your humidity plots the correct field names are extraHumid1, extraHumid2 etc - not sure if you have a typo in your post or if you are actually using extraHumd1 (note missing 'I') etc in you config file. Given your problems with extraTemp4, the first thing I would be checking is that the all 'extraHumid' fields you are using appear as columns in the archive table of your database.

Regarding the solar radiation and UV plots that are not updating, I notice that you have a number of other plots (week, month, year) that have not updated and have the same timestamp. Sounds like these plots are either not being uploaded or generated rather than a case of missing data. Are these plots enabled in your skin config file/weewx.conf? The plots are also in a different in colour/size/layout etc to the plots that are working, that also suggests a config file problem. If you can't see anything obvious please post an up-to-date weectl debug report along with a copy of your skin config file.

Gary

hajsek...@gmail.com

unread,
Jan 28, 2025, 4:17:14 AM1/28/25
to weewx-user
thank you for your answer.
Yes I add column in database "archive" and now I see graph.
But still no extraHumid1 or extraHumid2
here is copy paste from my weewx.conf
                extraTemp1 = Temperature Sensor SP
                extraTemp2 = Temperature Sensor KUR
                extraTemp3 = Temperature Sensor KLT
                extraTemp4 = Temperature Sensor JUD
                extraHumid1 = Humidity Sensor SP
                extraHumid2 = Humidity Sensor KUR
                extraHumid3 = Humidity Sensor KLT
                extraHumid4 = Humidity Sensor JUD

and this is from my skin.conf
        extraTemp1     = SPA Temperature
        extraHumid1     = SPA Humidity
        extraTemp2     = KUR Temperature
        extraHumid2     = KUR Humidity
extraTemp3     = KLT Temperature
        extraHumid3     = KLT Humidity
extraTemp4     = JUD Temperature
        extraHumid4     = JUD Humidity

this is a print screen from archive table
2025-01-28 09_53_33-phpmyadminweb.povej.net _ localhost _ weewx _ archive _ phpMyAdmin 5.2.0-1.el8.r.png

For SOLAR radiation and UV all is enabled in skin.conf
here is a file and debug log.
I didn't noticed anything relevant or typo, I checked all 3 times. Maybe you will see something from debug and skin.conf.
That worked before I changed skin to default one. After changed back to this those two graphs are wrong.
Thank you
Damian

ponedeljek, 27. januar 2025 ob 22:25:56 UTC+1 je oseba gjr80 napisala:
weewx debug.txt
skin.conf.txt

gjr80

unread,
Jan 29, 2025, 3:51:47 PM1/29/25
to weewx-user
The lack of extraHumid1 and extraHumid2 plots is due to an error in your plot definition in skin.conf. When you define a plot the content of the 3rd level square brackets [[[ ]]] define the plot file name, the observation types (ie database fields) to be plotted are then included in one or more 4th level square brackets [[[[ ]]]] (you can also specify the field to be plotted using the data_type option, but is usually reserved when including a observation type more than once in a given plot). For example:

[[[daytemp]]]
    [[[[outTemp]]]]

would result in a plot file daytime.png being created containing a plot of observation type outTemp

Any labels defined for observation types under [Labels] in skin.conf (or [StdReport] [[Defaults]] [[[Labels]]] in weewx.conf) are used for labels in plots, reports etc only, they are no aliases for the observation type so you cannot use them in place of an observation type in plots and reports. In you case the plot definition

[[[extraHumid1]]]
    [[[[ExtraHumidity SPA]]]]


will attempt to create a plot file named extraHumid1.png containing a plot of the observation type 'ExtraHumidity SPA'. Your definition of a label for extraHumid1, extraHumid1 = SPA Humidity, has no effect. Naturally the observation type 'ExtraHumidity SPA' does not exist so the plot cannot be generated. In fact, if you look in your log you will see:

Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine: Caught unrecoverable exception in generator 'weewx.imagegenerator.ImageGenerator'
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****  ExtraHumidity SPA
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****  Traceback (most recent call last):
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 248, in run
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****      obj.start()
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 465, in start
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****      self.run()
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/imagegenerator.py", line 37, in run
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****      self.gen_images(self.gen_ts)
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/imagegenerator.py", line 102, in gen_images
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****      self.image_dict[timespan][plotname])
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/imagegenerator.py", line 242, in gen_plot
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****      **option_dict)
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/xtypes.py", line 125, in get_series
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****      raise weewx.UnknownType(msg)
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****  weewx.UnknownType: ExtraHumidity SPA
Jan 28 10:09:41 web weewxd[652946]: ERROR weewx.reportengine:         ****  Generator terminated


indicating the observation type 'SPA Humidity' does not exist.

To fix the problem your plot definition needs to be of the form:

[[[extraHumid1]]]
    [[[[extraHumid1]]]]


you may wish to change the [[[ ]]] entry (ie the generated plot file name) to something other than [[[extraHumid1]]], there is no need to do so, but you might find the above definition confusing in the future. Given your extraHumid1 = SPA Humidity label definition, the plot should be labelled with 'SPA Humidity' rather than 'extraHumid1'.

As your radiation and UV plots appear after the extraHumid1/SPA Humidity plot definition that caused the error that caused the image generator to exit early, you should find these plots are once again generated once you fix the above.

Gary 

hajsek...@gmail.com

unread,
Feb 8, 2025, 2:11:27 PM2/8/25
to weewx-user
thank you for explanation.
I have disabled all extraHumid fom skin.conf. Just for testing
now I have UV and radiation plot but still don't have inside/outside humidity graph which should be there by default
than I added just this one
[[[extraHumid1]]]
    [[[[extraHumid1]]]]

but have no humidity graph
and all of this is in database under archive. Don't know what else is wrong?
regards
Damian
2025-02-08 20_08_32-_etc_weewx_skins_sofaskin_skin.conf – root@194.249.178.188 – Editor – WinSCP.png2025-02-08 20_08_12-Domzale Current Weather Conditions – Mozilla Firefox.png



sreda, 29. januar 2025 ob 21:51:47 UTC+1 je oseba gjr80 napisala:

gjr80

unread,
Feb 11, 2025, 5:20:01 AM2/11/25
to weewx-user

If I understand you correctly radiation and UV plots have returned, but now the humidity plot (consisting of inHumidity and outHumidity) is not being produced. You mention removing all extraHumidx and then later you say you added extraHumid1, did adding extraHumid1 cause some change in behaviour? Or no change?

I see your 'week' humidity plot has not changed since December 2024, so I expect there has been a problem with humidity for some time but it has been masked by all the other issues. I see from earlier posts your driver/WeeWX was emitting inHumidity and outHumidity in loop packets and archive records, so probably safe (for now) to assume it's still doing so. First thing to do is have a look in your database to see you have inHumidity and outHumidity archive table data. Have a look in your database at the archive table, do you have inHumidity and outHumidity columns? Is there any recent (ie within the last 24 hours) data in those columns?

If there is data in those columns let's have a look at your skin config file and weewx.conf. I know you have posted parts of them before but there have been changes since then so can you post another weectl debug report output - that will give us weewx.conf. Can you also post a full copy of your skin.conf  - I believe it is the sofaskin skin.conf. As usual check the contents of both for sensitive info before posting.

Gary

gjr80

unread,
Feb 14, 2025, 4:38:27 AM2/14/25
to weewx-user
So the archive table has recent inHumidity and outHumidity data. The log extract you posted shows a couple of issues. For some reason WeeWX was being restarted shortly after it started, for this reason it was hard to get any understanding of what was going on when WeeWX was running. We really need to see WeeWX run for a few archive periods to get an understanding of what WeeWX is doing. There was one report cycle towards the end of the log extract, but the report engine was not run due to an earlier report engine instance still running.  

The weectl debug error you encountered appears to be a bug in weectl debug when run under python 3.6 and earlier (I suspect you are running python 3.6.8). You can avoid the problem by sending the weectl debug report output to a file instead of the console, try something like:
weectl debug --output=/var/tmp/debug.txt
You should find the weectl debug output in the file /var/tmp/debug.txt. You can either copy the file contents and post here or post the file instead. 

Also, please post a copy of the skin config file for the sofaskin you are using.

Gary
> Yes radiation and UV returned but plot Inside/Outside humidity didn't work even before and still doesnt work even when I disabled all extraHumidX
> Also when I add extraHumid1 , didn't change anything.
> And I have in table under "archive" both inHumidity and outHumidity columns. I check at the end of tables in archive.
> Now when I try to run  weectl debug I get this
>  weectl debug
> Using configuration file /etc/weewx/weewx.conf

> Traceback (most recent call last):
>   File "/usr/share/weewx/weectl.py", line 75, in <module>
>    main()
>   File "/usr/share/weewx/weectl.py", line 67, in main
>     namespace.func(namespace)
>   File "/usr/share/weewx/weectllib/__init__.py", line 90, in dispatch
>     namespace.action_func(config_dict, namespace)
>   File "/usr/share/weewx/weectllib/debug_cmd.py", line 54, in debug
>     weectllib.debug_actions.debug(config_dict, output=namespace.output)
>   File "/usr/share/weewx/weectllib/debug_actions.py", line 52, in debug
>     sink = contextlib.nullcontext(sys.stdout)
> AttributeError: module 'contextlib' has no attribute 'nullcontext'

> weewx.conf have 
> # Set to 1 for extra debug info, otherwise comment it out or set to zero
> debug = 1
> and here is latest log

> Regards
> Damian
torek, 11. februar 2025 ob 11:20:01 UTC+1 je oseba gjr80 napisala:

If I understand you correctly radiation and UV plots have returned, but now the humidity plot (consisting of inHumidity and outHumidity) is not being produced. You mention removing all extraHumidx and then later you say you added extraHumid1, did adding extraHumid1 cause some change in behaviour? Or no change?

I see your 'week' humidity plot has not changed since December 2024, so I expect there has been a problem with humidity for some time but it has been masked by all the other issues. I see from earlier posts your driver/WeeWX was emitting inHumidity and outHumidity in loop packets and archive records, so probably safe (for now) to assume it's still doing so. First thing to do is have a look in your database to see you have inHumidity and outHumidity archive table data. Have a look in your database at the archive table, do you have inHumidity and outHumidity columns? Is there any recent (ie within the last 24 hours) data in those columns?

If there is data in those columns let's have a look at your skin config file and weewx.conf. I know you have posted parts of them before but there have been changes since then so can you post another weectl debug report output - that will give us weewx.conf. Can you also post a full copy of your skin.conf  - I believe it is the sofaskin skin.conf. As usual check the contents of both for sensitive info before posting.

Gary

hajsek...@gmail.com

unread,
Feb 23, 2025, 2:17:14 PM2/23/25
to weewx-user
Hi
I posted answer but don't know how it was lost, so here is again.
Here are both files, debug and skin.conf
Thank you
best regards
Damian

petek, 14. februar 2025 ob 10:38:27 UTC+1 je oseba gjr80 napisala:
weewx.rar

gjr80

unread,
Feb 26, 2025, 5:16:12 AM2/26/25
to weewx-user
Some comments below

Gary

On Monday, 24 February 2025 at 05:17:14 UTC+10 hajsek...@gmail.com wrote:
Hi
I posted answer but don't know how it was lost, so here is again.

I suspect you clicked 'Reply to author' which sends your reply by email to the author of the post you are replying to - your reply was in my spam. Better to click 'Reply all' which posts here. No matter.
 
Here are both files, debug and skin.conf

Thank you. Your problem is one of case. In skin.conf you have the following plot definition:

[[[dayinhumid]]]
            [[[[inHumidity]]]]
    [[[[outHumidity]]]]

This results in the file dayinhumid.png being generated with a plot of inHumidity and outHumidity. That is exactly what WeeWX is doing, I can see the generated plot file on your page at https://vreme.povej.net/dayinhumid.png. If you look at the HTML of your page that displays your plots you will see the following html img tag:

<img src="dayinHumid.png" alt="Inside/Outside Humidity">

this img tag is looking for the file dayinHumid.png. This is not the same as dayinhumid.png; case matters. I suggest you change the plot definition in skin.conf to:

[[[dayinHumid]]]
            [[[[inHumidity]]]]
    [[[[outHumidity]]]]

That should fix the missing humidity plot after the next report cycle completes.

For what its worth the file extraHumid1.png is being generated with a plot of extraHumid1, I can see it on your site at https://vreme.povej.net/extraHumid1.png

hajsek...@gmail.com

unread,
Feb 26, 2025, 5:48:18 AM2/26/25
to weewx-user
Thank you for your answer I know in linux there is a case sensitive for files and names. I have repaired that
        [[[dayoutHumid]]]
            [[[[outHumidity]]]]
and
[[[dayinHumid]]]
            [[[[inHumidity]]]]
to have separate graphs

for this

"For what its worth the file extraHumid1.png is being generated with a plot of extraHumid1, I can see it on your site at https://vreme.povej.net/extraHumid1.png"
Why I don't see that plot on my web page?

this is in my skin.conf.
[[[extraHumid1]]]
    [[[[extraHumid1]]]]


regards
Damian

sreda, 26. februar 2025 ob 11:16:12 UTC+1 je oseba gjr80 napisala:

gjr80

unread,
Feb 27, 2025, 2:44:15 AM2/27/25
to weewx-user
The process for displaying a plot on a web page really depends on how the web a page is produced/maintained. If the page is not produced by a WeeWX skin then chances are you need to get your hands dirty and manually add the necessary HTML etc to the page to display the plot. For a WeeWX skin it really depends on the skin. For example, the newer Seasons skin is largely configured through the skin config file whereas the older Season skin required you to manually edit page templates and add the necessary HTML tags. For your skin I have no idea how it is configured, it may be that you need to add some HTML code to the skin templates, or it maybe that you can configure what is displayed via the skin config file, or it may be something else. It's really something the skin developer should include in his install instructions/documentation or failing this something you need to take up with the skin developer directly. 

Gary

hajsek...@gmail.com

unread,
Feb 27, 2025, 3:34:29 AM2/27/25
to weewx-user
thank you, this is it.
I edit html and now I have also humidity graphs.
you teach me here alot, thank you for your time.
I hope someone else will get info from here.
best regards
Damian

četrtek, 27. februar 2025 ob 08:44:15 UTC+1 je oseba gjr80 napisala:
Reply all
Reply to author
Forward
0 new messages