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

Feature/electrical energy measurement #30389

Merged
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
f7b5327
Added the xml for the electrical energy measurement cluster
drempelg Nov 9, 2023
6d8daca
Added convienience functions for sending events
drempelg Nov 9, 2023
1d0d228
Merge branch 'project-chip:master' into feature/electrical_energy_mea…
drempelg Nov 9, 2023
04c265b
Fixed weird whitespace
drempelg Nov 9, 2023
ab70458
ran codegen
drempelg Nov 9, 2023
fc07e11
Merge branch 'master' into feature/electrical_energy_measurement
andy31415 Dec 1, 2023
687eb04
Add license server
andy31415 Dec 1, 2023
93473de
Remove chip namespace prefix because we are in the chip namespace alr…
andy31415 Dec 1, 2023
bcab262
Restyle and use CHIP_ERROR_FORMAT
andy31415 Dec 1, 2023
4e84017
Fix header as well
andy31415 Dec 1, 2023
7ec6948
Restyle
andy31415 Dec 1, 2023
18cd9c9
Some changes from epoch_s to systime_ms
andy31415 Dec 1, 2023
e143561
Update the cluster to the latest version from the SPEC PR
andy31415 Dec 1, 2023
b1a96de
Zap regen
andy31415 Dec 1, 2023
8b71ae6
Remove files that are not generated anymore by our xmls
andy31415 Dec 1, 2023
e3d57b6
Mark struct type attributes as needing attributeAccessInterfaceAttrib…
andy31415 Dec 1, 2023
213b12c
Ran zap_convert_all.py
andy31415 Dec 1, 2023
f0242fc
zaq regen after zap convert
andy31415 Dec 1, 2023
257e86a
make all clusters compile
andy31415 Dec 1, 2023
2c9e00c
Fix domain
andy31415 Dec 1, 2023
9e08a51
Do not use PRIu64
andy31415 Dec 1, 2023
50489c0
Fix esp32 compilation - add server cluster directory
andy31415 Dec 1, 2023
1c300bf
Start adding an attribute encoding interface - for now we write nulls
andy31415 Dec 4, 2023
e33f683
Start adding some storage capability for the energy bits
andy31415 Dec 4, 2023
ca3dffe
Also add attribute access interface for accuracy
andy31415 Dec 4, 2023
5f4ab03
Also reserve space for dynamic endpoints. Note that accuracy setting …
andy31415 Dec 4, 2023
daa999b
Make reporting work when accuracy is changed
andy31415 Dec 4, 2023
0762886
Merge branch 'master' into feature/electrical_energy_measurement
andreilitvin Dec 5, 2023
2c86bc7
Fix featuremap default
andreilitvin Dec 5, 2023
742c52a
Merge branch 'master' into feature/electrical_energy_measurement
andreilitvin Dec 5, 2023
5053f99
XML updates based on review
andy31415 Dec 6, 2023
a465078
Zap regen all
andy31415 Dec 6, 2023
eb77b7b
Merge branch 'feature/electrical_energy_measurement' of github.com:dr…
andy31415 Dec 6, 2023
86beff5
Update some copyrights
andy31415 Dec 6, 2023
fa836c4
Merge branch 'master' into feature/electrical_energy_measurement
andy31415 Dec 6, 2023
b1382e0
Merge branch 'master' into feature/electrical_energy_measurement
andy31415 Dec 6, 2023
f876441
Undo submodule change
andy31415 Dec 6, 2023
5e55f0b
fix test
andy31415 Dec 6, 2023
2121ea2
Merge branch 'master' into feature/electrical_energy_measurement
andreilitvin Dec 8, 2023
8c132a2
Merge branch 'master' into feature/electrical_energy_measurement
andreilitvin Dec 8, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -3230,6 +3230,71 @@ server cluster ActivatedCarbonFilterMonitoring = 114 {
command ResetCondition(): DefaultSuccess = 0;
}

/** This cluster provides a mechanism for querying data about the electrical energy imported or provided by the server. */
provisional server cluster ElectricalEnergyMeasurement = 145 {
bitmap Feature : bitmap32 {
kImportedEnergy = 0x1;
kExportedEnergy = 0x2;
kCumulativeEnergy = 0x4;
kPeriodicEnergy = 0x8;
kEphemeralEnergy = 0x10;
}

info event CumulativeEnergyImported = 0 {
epoch_s importedTimestamp = 0;
int64u energyImported = 1;
}

info event CumulativeEnergyExported = 1 {
epoch_s importedTimestamp = 0;
int64u energyExported = 1;
}

info event PeriodicEnergyImported = 2 {
epoch_s periodStart = 0;
epoch_s periodEnd = 1;
int64u energyImported = 2;
}

info event PeriodicEnergyExported = 3 {
epoch_s periodStart = 0;
epoch_s periodEnd = 1;
int64u energyExported = 2;
}

info event EphemeralEnergyImported = 4 {
epoch_s periodStart = 0;
epoch_s periodEnd = 1;
int64u energyImported = 2;
}

info event EphemeralEnergyExported = 5 {
epoch_s periodStart = 0;
epoch_s periodEnd = 1;
int64u energyExported = 2;
}

readonly attribute boolean measured = 0;
readonly attribute nullable epoch_s cumulativeEnergyImportedTime = 1;
readonly attribute nullable int64u cumulativeEnergyImported = 2;
readonly attribute nullable epoch_s cumulativeEnergyExportedTime = 3;
readonly attribute nullable int64u cumulativeEnergyExported = 4;
readonly attribute nullable epoch_s periodicEnergyImportedStartTime = 5;
readonly attribute nullable epoch_s periodicEnergyImportedEndTime = 6;
readonly attribute nullable int64u periodicEnergyImported = 7;
readonly attribute nullable epoch_s periodicEnergyExportedStartTime = 8;
readonly attribute nullable epoch_s periodicEnergyExportedEndTime = 9;
readonly attribute nullable int64u periodicEnergyExported = 10;
readonly attribute nullable int64u ephemeralEnergyImported = 11;
readonly attribute nullable int64u ephemeralEnergyExported = 12;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
readonly attribute attrib_id attributeList[] = 65531;
readonly attribute bitmap32 featureMap = 65532;
readonly attribute int16u clusterRevision = 65533;
}

/** Provides an interface for controlling and adjusting automatic window coverings. */
server cluster WindowCovering = 258 {
enum EndProductType : enum8 {
Expand Down Expand Up @@ -6077,6 +6142,34 @@ endpoint 1 {
handle command ResetCondition;
}

server cluster ElectricalEnergyMeasurement {
emits event CumulativeEnergyImported;
emits event CumulativeEnergyExported;
emits event PeriodicEnergyImported;
emits event PeriodicEnergyExported;
emits event EphemeralEnergyImported;
emits event EphemeralEnergyExported;
ram attribute measured default = false;
ram attribute cumulativeEnergyImportedTime;
ram attribute cumulativeEnergyImported;
ram attribute cumulativeEnergyExportedTime;
ram attribute cumulativeEnergyExported;
ram attribute periodicEnergyImportedStartTime;
ram attribute periodicEnergyImportedEndTime;
ram attribute periodicEnergyImported;
ram attribute periodicEnergyExportedStartTime;
ram attribute periodicEnergyExportedEndTime;
ram attribute periodicEnergyExported;
ram attribute ephemeralEnergyImported;
ram attribute ephemeralEnergyExported;
callback attribute generatedCommandList;
callback attribute acceptedCommandList;
callback attribute eventList;
callback attribute attributeList;
ram attribute featureMap default = 0x001F;
ram attribute clusterRevision default = 1;
}

server cluster WindowCovering {
ram attribute type default = 0x08;
ram attribute physicalClosedLimitLift default = 0xFFFF;
Expand Down
Loading
Loading