Ok, after hours of trial and error I guess the lable 'aggregate_interval' is responsible for my issue. I set it to 60 (so Images/Plots will get copied when older than a minute everytime a record runs).
Sorry for the spam. But can you answer me the question if there are limitations regarding the color formatting in the skin.conf? E.g. I can not set the color '0xD17729' in the ImageGenerator Section for the label 'axis_label_font_color'. E.g. 'white' or 'yellow' works great. When I try for example 'axis_label_font_color = 0xD17729' the axis label font color just appears as blue. So are there limits what color codes I can use? Any thoughts? Thank you, Henry. On Thursday, February 21, 2019 at 7:03:04 PM UTC+1, Henry Denston wrote: > > Thank you very much Tom. > > One thing I can not figure out is: > > In the docs it says that everytime an archive period is over (every time a > new record is done) all the newly generated images (plots) get copied into > the public_html folder. > What I noticed for me is that this is not the case. (actually it seems to > be a lot longer until they are updated). > When triggering a report manually using the wee_reports command the same > behavior can be observed. > However, when I delete the .png images (plots) from the public_html folder > the fresh images get copied into the public_html right away when the next > record is done. > Can you tell me how to change this so the newest plot images are always > copied to the public_html folder everytime a new record is done? > I tried to set copy_always flag in the skin.conf in the copy_generator > section but no change. > Also cannot seem to find anything in the docs that can help me. > > Thank you very much, Henry. > > I have no stale_age or cronjob defined for report generation. > > On Wednesday, February 20, 2019 at 2:56:36 PM UTC+1, Tom Keffer wrote: >> >> When a new record arrives, WeeWX tries to write all the types it can into >> the database. If a type is not in the database schema, it is skipped. >> >> If you're interested, the logic is in function manager._addSingleRecord() >> <https://github.com/weewx/weewx/blob/master/bin/weewx/manager.py#L273>. >> >> -tk >> >> On Tue, Feb 19, 2019 at 11:02 PM Henry Denston <[email protected]> wrote: >> >>> Tom, in case I would like to create my own database schema, is it enough >>> to just remove the cloumns from the dictionary in this file: >>> .\weewx\bin\schemas\wview.py'' ? >>> Seems like weewx still tries to write to removed database columns when >>> trying to save a record. >>> >>> Would really appreciate it in case you could name at least some files >>> off the cuff that I have to look into. >>> Thanks :) >>> >>> On Friday, February 15, 2019 at 11:23:00 PM UTC+1, Tom Keffer wrote: >>>> >>>> If you're going to all the trouble of creating a custom database >>>> schema, you can certainly make additional changes to suit your needs. Just >>>> be careful not to drop something you'll need for your reports. >>>> >>>> However, you'll find removing unused observation types does not save as >>>> much space as you think. A major part of the database is the index, which >>>> will still be there. >>>> >>>> As far as what's the best practice? I'd say, do what Google does: save >>>> everything. Storage is cheap. >>>> >>>> -tk >>>> >>>> On Fri, Feb 15, 2019 at 11:50 AM Henry Denston <[email protected]> wrote: >>>> >>>>> Hi Tom, >>>>> >>>>> thank you very much for your great reply! :) >>>>> I do not have an existing database yet. >>>>> >>>>> I already read the *Adding a new type to the database >>>>> <http://weewx.com/docs/customizing.htm#add_archive_type> *section in >>>>> the Customizing Guide, however was confused as I thought this only >>>>> applies >>>>> in case one wants to add a new observation type that is not present in >>>>> weewx yet (as in the example electricity). >>>>> I wanted to add additional radiation sources (and there is already the >>>>> radiation observation type implemented in weewx), so I thought by using >>>>> an >>>>> already existing observation type I might not need to adjust the database >>>>> structure. >>>>> Your answer however, clearly shows how to make the required changes, >>>>> thank you very much! (Maybe add this little example to the docs, right >>>>> next >>>>> to the electricity eample? :)) >>>>> >>>>> *Another question:* >>>>> By using the file user/extensions.py additional sensors can be added >>>>> to weewx as you have presented. >>>>> Is it best practice to just append additionally required sensors to >>>>> the standard weewx database structure or should I (make some additional >>>>> changes to) 'rebuild' the used database structure for my system? >>>>> For example in case I intend to use only about 8 sensors/values in my >>>>> current system (e.g.: dateTime, usUnits, windSpeed, outTemp, radiation, >>>>> radiation1, radiation2, radiation3) I could remove all additional values >>>>> in >>>>> the database that I will not use (e.g. barometer, pressure, altimeter, >>>>> inTemp, etc....) ? Would love to hear your opinion on that. >>>>> >>>>> Thank you very much, Henry. >>>>> >>>>> >>>>> On Friday, February 15, 2019 at 7:51:13 PM UTC+1, Tom Keffer wrote: >>>>>> >>>>>> Yes, your strategy would work, and your names (radiation1, radiation2, >>>>>> and radiation3) are sensible names to give the extra sensors. >>>>>> >>>>>> You would have to change the database schema to accommodate the extra >>>>>> sensors. >>>>>> >>>>>> Do you have an existing database, to which you want to add the new >>>>>> observation types? If so, then follow the instructions in the >>>>>> Customizing >>>>>> Guide, section *Adding a new type to the database >>>>>> <http://weewx.com/docs/customizing.htm#add_archive_type>*. If there >>>>>> is something that is confusing about the instructions, let us know what >>>>>> the >>>>>> problem is so we can clarify and, perhaps, update the documents and make >>>>>> it >>>>>> clearer. >>>>>> >>>>>> If you do not have an existing database, then it is slightly easier. >>>>>> To the bottom of the file user/extensions.py, add the following: >>>>>> >>>>>> import schemas.wview >>>>>> radiation_schema = schemas.wview.schema + [ >>>>>> ('radiation1'', 'REAL'), >>>>>> ('radiation2'', 'REAL'), >>>>>> ('radiation3'', 'REAL'), >>>>>> ] >>>>>> >>>>>> Then go into your weewx.conf and change the [DataBindings] and >>>>>> [Databases] section so they look like this: >>>>>> >>>>>> [DataBindings] >>>>>> >>>>>> [[wx_binding]] >>>>>> # The database must match one of the sections in [Databases]. >>>>>> # This is likely to be the only option you would want to change. >>>>>> database = archive_sqlite >>>>>> # The name of the table within the database >>>>>> table_name = archive >>>>>> # The manager handles aggregation of data for historical >>>>>> summaries >>>>>> manager = weewx.wxmanager.WXDaySummaryManager >>>>>> # The schema defines the structure of the database. >>>>>> # It is *only* used when the database is created. >>>>>> schema = user.extensions.radiation_schema >>>>>> >>>>>> ############################################################################## >>>>>> >>>>>> # This section defines various databases. >>>>>> >>>>>> [Databases] >>>>>> >>>>>> # A SQLite database is simply a single file >>>>>> [[archive_sqlite]] >>>>>> database_name = radiation.sdb >>>>>> database_type = SQLite >>>>>> >>>>>> # MySQL >>>>>> [[archive_mysql]] >>>>>> database_name = weewx >>>>>> database_type = MySQL >>>>>> >>>>>> Restart WeeWX. >>>>>> >>>>>> WeeWX will now use the new database radiation.sdb, which will have >>>>>> the new SQL columns. >>>>>> >>>>>> -tk >>>>>> >>>>>> >>>>>> >>>>>> On Fri, Feb 15, 2019 at 8:51 AM Henry Denston <[email protected]> wrote: >>>>>> >>>>>>> Hello everyone! >>>>>>> >>>>>>> I'm currently developing a custom weather station (a microcontroller >>>>>>> collecting data from custom sensors and forwarding it to a RaspberryPi). >>>>>>> I already read the customization guide multiple times and started to >>>>>>> develop a custom weewx-driver for my custom weather station. >>>>>>> The customization guide offers some very valuable insights. However, >>>>>>> I still have some questions and misunderstandings I guess, so I hope >>>>>>> some >>>>>>> experienced users/developers can help me out. :) >>>>>>> >>>>>>> As already stated I started developing my own driver, I also edited >>>>>>> the weewx.conf and my custom driver is loaded when I start weewx with: >>>>>>> sudo >>>>>>> ./bin/weewxd weewx.conf (it yields/prints packets) >>>>>>> I checked the sql table structures in the documentation and now I'm >>>>>>> not sure how to save my custom sensors values. >>>>>>> For example: I have a windsensor (measuring windspeed only), a >>>>>>> temperature sensor and 4 pyranometer sensors of different kind >>>>>>> measuring >>>>>>> the sun irradiation. >>>>>>> Now in my custon driver I know that I can store/assign the windspeed >>>>>>> and temperature like this for example: >>>>>>> >>>>>>> data = dict() >>>>>>> >>>>>>> >>>>>>> data['dateTime'] = int(data_array[0]) # unix timestamp >>>>>>> data['usUnits'] = weewx.METRIC >>>>>>> data['windSpeed'] = float(data_array[1]) # Anemometer measuring >>>>>>> windspeed only >>>>>>> data['outTemp'] = float(data_array[0]) # PT100 measuring temperature >>>>>>> outside >>>>>>> >>>>>>> >>>>>>> yield data >>>>>>> >>>>>>> >>>>>>> So this should be straight forward if I understand correctly. >>>>>>> But how do I store my irradiation values from the various >>>>>>> pyranomerters? >>>>>>> >>>>>>> It seems that in the expected database structure there is only one >>>>>>> column for irradiation available. >>>>>>> How can I store it so WeeWx can use it in its reports and archives? >>>>>>> I have smth. like this in mind: >>>>>>> >>>>>>> data['radiation'] = float(dataset_array_sensor[2]) # pyranometer 1 >>>>>>> data['radiation1'] = float(dataset_array_sensor[3]) # pyranometer 2 >>>>>>> data['radiation2'] = float(dataset_array_sensor[4]) # pyranometer 3 >>>>>>> data['radiation3'] = float(dataset_array_sensor[5]) # pyranometer 4 >>>>>>> >>>>>>> >>>>>>> Would this work? >>>>>>> Do I have to change the sql database structure for it to work? (I >>>>>>> plan to use sqlite for it as its easier to use it out of the box) >>>>>>> If so, how would I do it? >>>>>>> >>>>>>> I did read the customization guide multiple times but I'm really >>>>>>> confused regarding this. >>>>>>> I hope you can give me a hint into the right direction (I think I'm >>>>>>> probably way overthinking this and just missing a small detail) >>>>>>> Thank you very much in advance! :) >>>>>>> >>>>>>> Best regards, Henry. >>>>>>> >>>>>>
