Skip to main content

rdc-correlate

Correlates Kohler RDC generator wire-protocol TLV parameters (0xXXXX IDs streaming over TCP 5253) against Rehlko cloud API fields to verify or discover new parameter mappings.

When it finds new high-confidence mappings, it opens a PR on rdc-protocol-research that updates PARAMETERS.md with the discoveries.

What it does

  1. Reads kohler.sqlite — a database populated by the rdc-proxy pcap capture pipeline (wire_records) and a Rehlko cloud poller (cloud_fields).
  2. For every (wire_param_id, cloud_field_path) pair, computes Pearson r on time-aligned samples + a median scale ratio.
  3. Emits the highest-confidence match per wire ID that clears a threshold.
  4. Diffs those findings against the current PARAMETERS.md in rdc-protocol-research. New entries are bundled into a branch and opened as a PR for human review.

Quick start

See docs/SETUP.md for the full walkthrough (it assumes a Pi already running rdc-proxy). The short version:

curl -fsSL https://raw.githubusercontent.com/andrewroydshayes/rdc-correlate/main/install/install.sh \
  | sudo bash

# Once credentials + gh auth are set up:
sudo /opt/rdc-correlate/venv/bin/python -m rdc_correlate correlate --out /tmp/f.json
sudo /opt/rdc-correlate/venv/bin/python -m rdc_correlate publish --findings /tmp/f.json --dry-run
sudo /opt/rdc-correlate/venv/bin/python -m rdc_correlate publish --findings /tmp/f.json

Subcommands

Command Purpose
correlate Run correlation on the sqlite db; write findings.json
publish Open a PR on rdc-protocol-research for new findings (+ --dry-run)
poll Test Rehlko API credentials (lists homes and devices)

Development

pip install -e ".[dev]"
pytest

License

MIT.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rdc_correlate-0.2.0.tar.gz (13.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rdc_correlate-0.2.0-py3-none-any.whl (12.7 kB view details)

Uploaded Python 3

File details

Details for the file rdc_correlate-0.2.0.tar.gz.

File metadata

  • Download URL: rdc_correlate-0.2.0.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rdc_correlate-0.2.0.tar.gz
Algorithm Hash digest
SHA256 88fc6f0d3c78e2f038c22241ce1a5e728c026a466ee06999270a3b3cf393a5b0
MD5 02bb40f1ac1d4770828f5a53a5fa1724
BLAKE2b-256 af95945a52c95960432171023c07cef927bc2c9104c873103c6e471368b500ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for rdc_correlate-0.2.0.tar.gz:

Publisher: publish.yml on andrewroydshayes/rdc-correlate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rdc_correlate-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: rdc_correlate-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 12.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rdc_correlate-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bd6e9559861d9f77ce0f9d8dfeadcd4506ae631b2bc83fa1bb1c5525d5781434
MD5 85c79a3a7fe1177757d5646b44947bdb
BLAKE2b-256 f848f67e5c54348095578d90145fb01cce79bee67c526190ca3cb99dc9a3a5df

See more details on using hashes here.

Provenance

The following attestation bundles were made for rdc_correlate-0.2.0-py3-none-any.whl:

Publisher: publish.yml on andrewroydshayes/rdc-correlate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page