Hi all, I've enjoyed playing with Weewx and WS2080 for the past few months - thanks!
I've wanted to extend this with solar panel information too, thinking weewx sounds great for this. I got most of the way to writing a tool/driver to read the data, then noticed that Matthew Wall recently released something similar as Weewx driver too. Doh! Though my 'driver' might be more flexible .. stay tuned. However, its taken me longer than I'd expect or like to get my head around such a Weewx driver and how to 'use' it. Some of it is Weewx is arguably simpler to use than the documentation implied, and so I thought much more would be required on top of a driver to use it - e.g. services, database etc. Even after reading the documentation several times it wasn't obvious that a 'driver' should almost just work in Weewx - together with some not quite so obvious edits to weewx.conf and StdArchive etc. Something that may help is more of an intro to the 'system architecture' in the customization documentation, possibly at the very start e g. below. I think if I'd have read something like the 'document' below I'd have picked things up faster. Also, if these drivers/examples could more automatically setup their separate database and some example reports would be great for newbie users. Anyway, once I got my head around this 'architecture' getting these graphs out has been almost a pleasure - see below, still some tidying to do. I really wanted the 'day/night' shading, and the graphs clearly show the voltage low point through the night and the current dropping off as the battery reaches full charge. With a bit more finesse I'll upload my driver / skin etc to Github to share. Though a future step may be to look at the gorgeous Belchertown style graphs :) System Architecture - A weewx process normally handles the monitoring of one station - e.g. a weather station. The process is configured with a weewx.conf file. - Multiple weewx processes may be run simultaneously to monitor multiple stations, using separate weewx.conf files to refer to different driver and databases etc. More advanced weewx processes might create reports across multiple other weewx station databases, e.g. as a dashboard. - A weewx process has at most one ‘driver’ to communicate with the station hardware and receive ‘high resolution’ (i.e. every few seconds) measurement data in the form of LOOP packets. The driver is single-threaded and blocking, so no more than one driver can run in a weewx process. - LOOP packets may contain arbitrary data from the station/driver in the form of a Python dictionary. LOOP packet fields should conform to defined Weewx measurement units and measurement groups so they can then be summarised automatically (e.g. average of temperature, or sum of rainfall) by weewx over a set interval period (e.g. 5 minutes) into ‘archive records’. - A number of services may be configured within the weewx process to operate on the LOOP, archive record and database data - triggering when new data or timed events arise. Typically these services run at 5 minute intervals. Standard services include - - StdArchive - automatically create a database based on a user ‘schema’ (a database table definition held as a python array in the driver or service) then write archive records as they arise. Only archive record fields which match the schema will be written to database. - StdReport - generate reports based on database archive records, stored by StdArchive. - etc - In addition some simpler services may generate archive records directly rather than from a driver (e.g. pmon example) and possibly store to their own database, partly configured through weewx. These would be ‘low resolution’ measurements taken at the same frequency services are run (e.g. 5 minutes) and without the statistical summarisation weewx can provide. - Weewx Extensions may consist of a combination of driver, service, database and/or skin code. However, only one station and associated driver can be run at a time. [image: weewx.png] -- 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+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/e039cd25-7ba9-4546-87bc-3c2cf87a8e6d%40googlegroups.com.