Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added support for for Tauron ZE.314 used in Poland. #48

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

Eryk55
Copy link

@Eryk55 Eryk55 commented Feb 15, 2023

Added fields used in ZE.314 meter by polish Tauron company.

Copy link
Owner

@matthijskooijman matthijskooijman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your contribution, it looks good. I left a few more comments inline.

Cool to see the same format is being used across Europe now. Do you happen to have any specification documentation about the format as it is used in Poland (or if not, maybe about this meter specifically)? And maybe an example telegram which I can use to test the code later?

DEFINE_FIELD(meter_time, String, ObisId(1, 0, 0, 9, 1), StringField, 0, 8);
DEFINE_FIELD(meter_date, String, ObisId(1, 0, 0, 9, 2), StringField, 0, 8);
DEFINE_FIELD(total_imported_inductive_reactive_energy, FixedValue, ObisId(1, 0, 5, 8, 0), FixedField, units::kvarh, units::kvarh);
DEFINE_FIELD(total_imported_capacitive_reactive_energy, FixedValue, ObisId(1, 0, 8, 8, 0), FixedField, units::kvarh, units::kvarh);
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

units:kvarh is not defined yet, did you forget to commit that addition maybe?

Copy link

@SzczepanLeon SzczepanLeon Feb 16, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, it is my mistake with kvarh. It is fixed now.

My meter, ZE.314, from Tauron use EDIS codes, not OBIS, so part A-B: is missing.
So in my code I added to each line that 1-0: part. And with that change I can use DSMR parser. So telegram from my meter is useless for test purposes.

Maybe it could be good to add EDIS support to DSMR parser? I know it is not DSMR specyfic, but, It is best OBIS parser that I found.

@@ -357,6 +357,13 @@ DEFINE_FIELD(slave_valve_position, uint8_t, ObisId(0, SLAVE_MBUS_ID, 24, 4, 0),
* E meter) (Note: 4.x spec has "hourly meter reading") */
DEFINE_FIELD(slave_delivered, TimestampedFixedValue, ObisId(0, SLAVE_MBUS_ID, 24, 2, 1), TimestampedFixedField, units::m3, units::dm3);

/* extra field for Tauron ZE.314 */
DEFINE_FIELD(meter_time, String, ObisId(1, 0, 0, 9, 1), StringField, 0, 8);
DEFINE_FIELD(meter_date, String, ObisId(1, 0, 0, 9, 2), StringField, 0, 8);
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these strings always a fixed length? Then maybe it would be good to define a DateField and TimeField similar to the existing TimestampField (which is just a subclass of StringField, so it would work pretty much the same, but might be a bit more clear).

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, it looks like fixed length. OK, I will define DateField and TimeField.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants