Commit Graph

61 Commits

Author SHA1 Message Date
de167c89b6
issue-51-telegram refactored TelegramParser.parse to return Telegram … (#121)
* issue-51-telegram improved mbus device parsing; refactored TelegramParser.parse to return Telegram object which is backwards compatible with the dict result
2023-02-19 12:24:44 +01:00
6fb2ad3495
Merge pull request #126 from jchevalier7/feat/iskra_ie
Add Iskra IE.x meters specification
2023-02-12 13:45:43 +01:00
AA61SL
fe175a9a69 feat: Fixing test file to run setup.py test 2023-02-09 11:07:21 +01:00
AA61SL
78880a1881 feat: add Iskra IE.x meters 2023-02-09 11:01:00 +01:00
Jean-Louis Dupond
edf535f987 Fix parsing with invalid timestamps
Sometimes the timestamp in the DSMR message is invalid (when no data
read read from the mbus meter?), and then parsing fails.
Fixing this by handling the exception and returning None for invalid
timestamps. Fixes: #120
2023-01-30 14:45:32 +01:00
Hans Erik van Elburg
5f58bc8f72 add pylama back in + fix uniform style issues reported by pylama 2022-12-27 18:58:48 +01:00
Jean-Louis Dupond
d05fe2692b Add support for Fluvius V1.7.1 DSMR messages
These include (since 1.6) the water mater messages.
And since 1.7.X also peak usage values.

https://maakjemeterslim.be/rails/active_storage/blobs/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZ0lEIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--cdd9b48fd0838e89b177f03b745b23450fd8f53e/e-MUCS_P1_Ed_1_7_1.pdf?disposition=attachment
2022-12-12 20:27:53 +01:00
Richard Schleich
09f4afcada
Adds support for the Sagemcom T210-D-r smart meter installed by Austrian grid operators.
The smart meter uses the DSMR/P1 standard and embeds the data in an encrypted and authenticated "DLMS General Global Cipher" frame.
The encryption/decryption is handled by the "dlms_cosem" lib.
Test cases are included.
Adds OBIS codes for reactive energy.
2022-10-14 17:50:02 +02:00
Vladimir
7610646e10 Add FileReader test 2022-02-22 09:50:11 +01:00
Ronald Pijnacker
cedf71dbb5 Merge remote-tracking branch 'upstream/master' into feature/rfxtrx 2022-01-04 09:55:00 +01:00
Ronald Pijnacker
eace91b591 Fix coding style issues 2022-01-04 09:53:49 +01:00
Ronald Pijnacker
c082cf4868 Add test case 2022-01-01 20:19:24 +01:00
Hans Erik van Elburg
28e3c51f0d fix pylama errors on PR92 + editorial fix 2021-11-21 16:08:47 +01:00
00248f490e
Merge pull request #92 from Aeroid/master
Support for (German) EasyMeter Q3D using COM-1 Ethernet Gateway
2021-11-21 13:59:35 +01:00
Gunnar Klauberg
de4dc2ec98 Q3D COM-1 test telegrams 2021-11-14 22:05:27 +00:00
Dennis Siemensma
4688cf9058 test/test_protocol.py:6:1: W0611 'dsmr_parser.telegram_specifications' imported but unused [pyflakes]
test/test_protocol.py:7:1: W0611 'dsmr_parser.parsers.TelegramParser' imported but unused [pyflakes]
2021-09-22 21:26:54 +02:00
Rene Hogendoorn
b901b3f74e Add unit test for keep-alive 2021-02-11 11:08:19 +01:00
Hans Erik van Elburg
3ddf0366e6 small fix 2020-12-24 12:44:49 +01:00
Hans Erik van Elburg
629767590b finished tox tests for issue 57 fix 2020-12-24 12:37:45 +01:00
Hans Erik van Elburg
81cccbd228 fix tox tests 2020-12-24 01:52:17 +01:00
dunajski
ec1d37ea08 Corrects example telegrams.
In example telegrams there a few mistakes in header strings. Using '\'
in strings have special feature to add to string some non-printable
characters, for example to add new line we can add \n for tab \t etc. So
whenever we want to just print backslash as normal character we have to
add another '\' before. In short string "On\\Off" prints "On\Off" ascii
string.

In enquired telegrams there are few strings with \2 sign in header,
'/ISk5\2MT382-1000\r\n' and when we calculate CRC for whole given
telegram part of "..\2.." is interpreted as one character (value 0x02)
instead of two characters ('\', '2').

I think in a header in the example enlosed in P1 DSMR Companion Standard
/ISk5\2.. stand for printable '\' and '2' character instead of
"converted" to special '\2' character.
2020-09-28 10:22:16 +02:00
Hans Erik van Elburg
789871899c ProfileGeneric parser working, ProfileGenericObject implemented and Test for V4 telegram completed. 2020-05-17 01:25:02 +02:00
Hans Erik van Elburg
b6278a8991 ProfileGeneric parser working, TODO complete ProfileGenericObject + Test 2020-05-16 16:31:26 +02:00
Hans Erik van Elburg
c4331f6cd6 add tests for the missing elements and correct some test bugs 2020-05-02 15:50:00 +02:00
Hans Erik van Elburg
b6537678a7 cleaned up based on pylama complaints / pinpointed to coverage version 4.5.4 as next version is incompatible 2020-02-02 22:12:25 +01:00
Hans Erik van Elburg
f7ba363b93 small fixes 2019-11-25 01:37:48 +01:00
Hans Erik van Elburg
f9e9e70771 experimentation file 2019-10-03 21:33:11 +02:00
Hans Erik van Elburg
c36f68a884 working version of the Telegram object 2019-06-06 05:41:55 +02:00
jk-5
3327c78c0e Updated unittests 2018-09-06 15:49:11 +02:00
Nigel Dokter
d6e28db116 log checksum errors as warning; dont force full telegram signatures; removed unused code for automatic telegram version detection; 2017-06-05 21:02:59 +02:00
Nigel Dokter
d2f57a8926 fixed pep8 2017-02-27 20:35:19 +01:00
Nigel Dokter
9d20bb8ad5 experimenting with version detection 2017-01-28 17:01:33 +01:00
Nigel Dokter
24ab9aa712 experimenting with version detection 2017-01-28 17:01:02 +01:00
Nigel Dokter
a88dfe1a41 added DSMR v3 specification; updated changelog; 2017-01-26 18:50:30 +01:00
Nigel Dokter
c4dcc73191 added DSMR v3 specification 2017-01-26 18:02:21 +01:00
Nigel Dokter
c4caf54576 pep8 2017-01-25 19:34:38 +01:00
Nigel Dokter
8a868ce826 pep8 2017-01-25 19:33:42 +01:00
Nigel Dokter
9623f3b092 added unit test for DSMR v5 parsing 2017-01-25 19:32:30 +01:00
Nigel Dokter
45ee8dbb32 added basic config for DSMR v5 specification; added DSMR v5 example telegram for testing; 2017-01-22 16:39:16 +01:00
Nigel Dokter
45f5fe2c36 define checksum support in telegram specification; moved telegram v2 exception temporarily from parser to MBUSObject; 2017-01-21 10:33:17 +01:00
Nigel Dokter
07634abed1 Progress on removing TelegramParserV2_2 and TelegramParserV4 in favor of a generic TelegramParser 2017-01-20 23:02:19 +01:00
Nigel Dokter
fadf206715 moved serial clients to own package 2017-01-10 20:09:33 +01:00
Nigel Dokter
21334e5a0a changed relative imports to absolute; renamed TelegramBuffer.put to TelegramBuffer.append; 2017-01-09 20:15:55 +01:00
Nigel Dokter
87a5a2d2fa dev progress 2017-01-08 11:28:15 +01:00
Nigel Dokter
663024239f dev progress 2017-01-08 11:24:04 +01:00
Nigel Dokter
0e7819b535 dev progress 2017-01-07 22:29:02 +01:00
Nigel Dokter
60317a0dc5 dev progress 2017-01-07 21:26:21 +01:00
Nigel Dokter
d990a316ad finishing implementation of TelegramBuffer 2017-01-07 11:25:43 +01:00
Nigel Dokter
f10032f701 refactored TelegramParser.parse to accept a str instead of list 2017-01-05 21:24:41 +01:00
Nigel Dokter
3b43cbf841 all tests are written using unittest.TestCase now 2017-01-04 19:55:54 +01:00