rtlamr-python 1.0.2__py3-none-any.whl → 1.0.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,15 +1,26 @@
1
1
  """ERT type → commodity classification.
2
2
 
3
3
  Source: https://github.com/bemasher/rtlamr/blob/master/meters.csv
4
- Ambiguous types resolved by predominant field usage:
5
- 4 → electric (Itron AMI/C/R300 series; Sensus R-275 gas is the outlier)
6
- 12 → gas (Itron 100G series; Schlumberger CENTRON electric is the outlier)
4
+ (verified against upstream 2026-09-26 — 67 rows, ERT types 0-13 only).
5
+
6
+ Mostly the 4-bit classic ERT type field used by SCM/IDM/NetIDM. SCM+ carries
7
+ an 8-bit EndpointType instead (see protocols/scmplus.py) that isn't in
8
+ meters.csv at all — a value outside 0-15 isn't a gap in this table, it's a
9
+ code meters.csv simply doesn't document for that wider space. 156 is one
10
+ such code, added below without meters.csv backing (see comment on it).
11
+
12
+ Two types are ambiguous across commodities in the source data; resolved by
13
+ majority vote:
14
+ 4 -> electric (18 rows: Itron AMI/C-series/R300 family; 1 outlier: Sensus
15
+ R-275, Gas)
16
+ 12 -> gas (4 rows: Itron 100G family; 1 outlier: Schlumberger CENTRON OOK
17
+ RF, Electric)
7
18
  """
8
19
  from __future__ import annotations
9
20
 
10
21
  COMMODITY_ERT_TYPES: dict[str, list[int | str]] = {
11
22
  "electric": [4, 5, 7, 8],
12
- "gas": [0, 1, 2, 9, 12],
23
+ "gas": [0, 1, 2, 9, 12, 156],
13
24
  "water": [3, 11, 13, "r900"],
14
25
  }
15
26
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rtlamr-python
3
- Version: 1.0.2
3
+ Version: 1.0.4
4
4
  Summary: Python implementation of RTLAMR-go — a multi-protocol ERT smart meter receiver
5
5
  Author-email: Ryan Bagwell <ryan@ryanbagwell.com>
6
6
  License-Expression: MIT
@@ -23,11 +23,12 @@ Description-Content-Type: text/markdown
23
23
  License-File: LICENSE
24
24
  Requires-Dist: numpy>=1.24
25
25
  Requires-Dist: pyrtlsdr==0.5.0
26
- Requires-Dist: pyrtlsdrlib==0.0.5
27
26
  Requires-Dist: pyusb>=1.3.1
28
27
  Requires-Dist: setuptools
29
28
  Provides-Extra: dev
30
29
  Requires-Dist: pytest; extra == "dev"
30
+ Provides-Extra: lib
31
+ Requires-Dist: pyrtlsdrlib==0.0.6; extra == "lib"
31
32
  Dynamic: license-file
32
33
 
33
34
  # rtlamr-python
@@ -8,15 +8,15 @@ rtlamr_python/poster.py,sha256=Y1mN5mhVv1GZiZL2sg5qMH7DqofIapa7sVZEAAROXYI,3382
8
8
  rtlamr_python/r900_decoder.py,sha256=U3psGQlRtNqxjyCpQ2Ve14k4jHYFCW9HDVAkeWkYc2E,11667
9
9
  rtlamr_python/sdr.py,sha256=uiLRQy_mCPWS_nD_qiEBME5el4QOaOomT_J5ARXiYoE,3217
10
10
  rtlamr_python/protocols/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- rtlamr_python/protocols/commodity.py,sha256=_AIZFvhgkHArHXh1Ti6AnLcddhdYhqXDoMghy5kP-mA,1196
11
+ rtlamr_python/protocols/commodity.py,sha256=TQzGsYjSCbbbjGFClJWECGTwz5b-fWaKj6tfmgtfJSc,1721
12
12
  rtlamr_python/protocols/idm.py,sha256=OmDrBhdtjrzvqv369Vfyz30mxUFs94CCTShx2Ogjyqo,4616
13
13
  rtlamr_python/protocols/netidm.py,sha256=9KoKfuo7DCkmXQRZQM2TbcM9eS180xtOMBlLES8Ywtw,3884
14
14
  rtlamr_python/protocols/r900.py,sha256=W-eGGc0rl28_yhKOCFP31GQbIxX8Hkug3e4VkSxDJcM,2044
15
15
  rtlamr_python/protocols/scm.py,sha256=FmZnXL2-ft8kOKuqA1-Fc46dn30kphdfI826zPdbRfU,2348
16
16
  rtlamr_python/protocols/scmplus.py,sha256=Qr4HOUKtBdFrG3ZndnW3LfXL_jD_mFz4YdZSRRi-zuQ,2405
17
- rtlamr_python-1.0.2.dist-info/licenses/LICENSE,sha256=xzcGj3DR_4EbJer9xFCahm4Q2n1ud8C8C9CnmEr7NPw,1069
18
- rtlamr_python-1.0.2.dist-info/METADATA,sha256=86i7CDd7cB1VuWXMAZiQaRJZj3IeHzWjHYp-0Gpbe90,4817
19
- rtlamr_python-1.0.2.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
20
- rtlamr_python-1.0.2.dist-info/entry_points.txt,sha256=8LqK70DFQWCZTjeKsqMXZVd_UxTed4Q-HKmjHk8PWUs,50
21
- rtlamr_python-1.0.2.dist-info/top_level.txt,sha256=GX1_wGjMfRbIUgHQjdY-tKIfm6u446OrI7-DCTsyRtk,14
22
- rtlamr_python-1.0.2.dist-info/RECORD,,
17
+ rtlamr_python-1.0.4.dist-info/licenses/LICENSE,sha256=xzcGj3DR_4EbJer9xFCahm4Q2n1ud8C8C9CnmEr7NPw,1069
18
+ rtlamr_python-1.0.4.dist-info/METADATA,sha256=VskF-9Zh7uR9MX1I5084AQc07YUQspTXUcXrlJocYcc,4853
19
+ rtlamr_python-1.0.4.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
20
+ rtlamr_python-1.0.4.dist-info/entry_points.txt,sha256=8LqK70DFQWCZTjeKsqMXZVd_UxTed4Q-HKmjHk8PWUs,50
21
+ rtlamr_python-1.0.4.dist-info/top_level.txt,sha256=GX1_wGjMfRbIUgHQjdY-tKIfm6u446OrI7-DCTsyRtk,14
22
+ rtlamr_python-1.0.4.dist-info/RECORD,,