COSEM Class 23 (Register Table) and Class 24 (Compact Array) for High-Speed Readout
-
Reducing Overhead with Compact Array (Class 24)
Standard DLMS responses repeat ASN.1 type tags for every element in an array, wasting significant bandwidth over cellular or PLC networks.
Standard Array vs Compact Array
- Standard Array (
0x01): Contains[Type, Value]for every single field.- Example: Reading 100 integer values requires $100 \times 3 = 300$ bytes.
- Compact Array (
0x13): Defines a Single Type Template Header followed by raw contiguous byte payload.- Example: Header (4 bytes) + $100 \times 2$ bytes = 204 bytes (32% reduction in bandwidth!).
Class 24 is particularly valuable for rapid instantaneous profile polling where data structure is strictly fixed.
- Standard Array (
-
Make sure your client parser supports
Compact-Array(Data Type0x13). When decoding, the client must first parse theTypeDescriptionoctets, then read the raw value stream according to the template schema. -
We tested Compact Array across 10,000 cellular smart meters polling hourly voltages. It reduced monthly cellular SIM data consumption from 12 MB/meter to 7.8 MB/meter.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login