Site banner

Software

Open-source

Caspar Water System thanks the authors of the many pieces of computer software/system that we depend on, including:

Our source code is available under an Apache-2 license at jmacd/caspar.water, including:

  • Custom OpenTelemetry collector build including receivers (modbus, current-loop, mqtt/sparkplug, bme280, atlas pH), exporters (influxdb, LCD displays), etc.
  • Billing program (thanks johnfercher/maroto for the PDF generator library).
  • Terraform definitions for cloud and station computer infrastructure (station, gateway, cloud).

Duckpond

Duckpond is a "local-first" Rust software system for managing timeseries from a variety of sources (e.g., random CSV files), based on DuckDB and Parquet files. This manages a file system of timeseries data and exports to Observable Framework.

🚧 Duckpond is being used to publish water monitoring data collected by the Noyo Harbor Blue Economy project in a volunteer collaboration. Includes a vendor-specific HydroVu client library.

🚧 Duckpond is being used to publish our high-resolution water monitoring data.

Supruglue

Supruglue is a C++ programming environment for the Beaglebone/Texas Instruments am335x PRU real-time chip aimed at being low-tech.

Mmmm. Proof of concept industrial real-time timer switch (that logs to the cloud), pulse counter, UI-1203 ("Sensus protocol") reader. I would prefer to write such a thing in Rust today, and we're not certain that Texas Instruments will continue producing this chip!