Skip to main content
Home
for DLMS smart meters

Main navigation

  • Home
  • Products
  • About us
  • Open Source
  • Community
  • Forum
  • Downloads
User account menu
  • Log in

Breadcrumb

  1. Home
  2. Gurux Conformance Tests
gxdn
More information from Gurux Conformace tests Gurux Conformance Tests contains following tests

Gurux Conformance Tests

  • 1. Structure tests for send and received data
    Gurux Conformance Tests can't check is content of data correct. Tool can't know is value of active or reactive energy correct, but it tests structure of data. All objects are tested that can be found from the meter.
  • 2. OBIS code validation
    All OBIS codes are validated and check that they follow the rules of the standard.
  • 3. HDLC framing maximum size
    Maximum HDLC framing size is checked. If meter proposes that max frame size is 200 bytes, it's checked that more than 200 bytes is not sent in one frame. This is not very critical when TCP/IP or serial port communication is used, but this might be fatal with RF communication.
  • 4. Max PDU size.
    It's checked that meter respects maximum PDU size that client asks and don't use bigger PDU than client asked.
  • 5. Writing
    All objects that can be write are tested by writing read value back. Wrote value is not changed. Then it's read again to verity that is's not changed.
    Write test is ignored by default. You must activate it when tests are started.
  • 6. Invalid password
    After tests are completed, connection is closed and connection with wrong password is try to made. If you want to execute this test, invalid password must set on the test settings.
  • 7. Content of Association LN
    Content of Association LN is checked that they are correct.
  • 8. Image activation
    Image activation is tested as described on Blue Book 4.4.6.4.

Clock Tests

  • 1. Update clock time zone and time.
    Updates clock time zone and time using PC time zone and time.
  • 2. Update clock time using UTC time
    Updates clock time using current PC time in UTC time zone. Purpose of this test is check that meter can handle different time zones,
  • 3. Flip DST and check is date time correct
    Read daylight saving time value and flip it. Then read date and time again and check that it's correct. Purpose of this test is check that meter can update time if DST changes.
  • 4. Check DaylightSavingActive status
    Check that DaylightSavingActive status flag status. Then change time and check that status has changed.
  • 5. Change time zone and verify time
    Time zone is changed to UTC and then time is read to verify it's also changed to new time zone. Purpose of this test is check that meter can update time if time zone changes.
  • HDLC Conformance Tests

    • 1. Initialize test
      Tested that basic HDLC framing functionality is implemented. Send Disc, SNRM and Receiver ready to check that meter is in Normal Response Mode.
      DLMS CTT 3.1: T_HDLC_FRAME_P1
    • 2. Corrupted CRC test.
      Send SNRM and SNRM again where one byte from CRC is removed. Then check that meter is in Normal Response Mode.
      DLMS CTT 3.1: T_HDLC_FRAME_P2
    • 3. Is meter respecting inactivity timeout.
      Send SNRM and then wait to check that inactivity timeout is working. This test is skipped if IEC HDLC setup object is not found.
      DLMS CTT 3.1: T_HDLC_FRAME_P3
    • 4. Check that meter is not handle frames where opening, closing or both frames are missing.
      Send Disc and then send invalid frames and check that meter is in Normal Disconnected Mode.
      DLMS CTT 3.1: T_HDLC_FRAME_N1
    • 5. Check that meter can handle invalid data where opening, closing and CRC are correct.
      Send Disc and then send invalid frames and SNRM and wait UA.
      DLMS CTT 3.1: T_HDLC_FRAME_N2
    • 6. Send invalid SNRM frame.
      Send Disc and then send invalid SNRM frame and Disc and check that meter is in Normal Disconnected Mode.
      DLMS CTT 3.1: T_HDLC_FRAME_N3
    • 7. Check that meter is ignoring frame if frame size is too long.
      Send Disc and then send invalid SNRM frame where length is too long. Send Disc and check that meter is in Normal Disconnected Mode.
      DLMS CTT 3.1: T_HDLC_FRAME_N4
    • 8. Check that meter don't accept invalid HDLC frames.
      Send SNRM and then send Unknown command identifier.
      DLMS CTT 3.1: T_HDLC_FRAME_N5
    • 9. Check that meter don't accept invalid HDLC frames.
      Send Disc and then send illegal frame. Send Disc and check that meter is in Normal Disconnected Mode.
      DLMS CTT 3.1: T_HDLC_FRAME_N7
    • 10. Check that meter don't accept frame if CRC is wrong.
      Send Disc and then send SNRM frame where CRC is wrong. Then send Disc and check that meter is in Normal Disconnected Mode.
      DLMS CTT 3.1: T_HDLC_FRAME_N10
    • 11. Server Address size is 3 bytes.
      This test is used to check how meter can handle if server address size is three bytes.
      DLMS CTT 3.1: T_HDLC_ADDRESS_N7
    • 12. Check how meter can handle frame size 2030.
      This test is used to check that meter handle if frame size is 2030.
      DLMS CTT 3.1: T_HDLC_NDM2NRM_P1
    • 13. Check how meter can handle proposed windows size is 4.
      This test is used to check that meter can handle if client proposes window size to 4.
      DLMS CTT 3.1: T_HDLC_NDM2NRM_P2
    • 14. Send AARQ.
      This test is used to check that meter can handle default AARQ message.
      DLMS CTT 3.1: T_HDLC_INFO_P1
    • 15. Send AARQ in segments.
      This test is used to check that meter can handle if AARQ is sent in segments.
      DLMS CTT 3.1: T_HDLC_INFO_P1
    • 16. Send frame that is too long.
      This test is used to check that meter can handle if frame is too long.
      DLMS CTT 3.1: T_HDLC_INFO_N1
    • 17. Send SNRM and then Receiver ready with wrong sequence number.
      This test is used to check that meter can handle if wrong sequence number is sent and meter connect again.
      DLMS CTT 3.1: T_HDLC_INFO_N2
    • 18. Send AARQ with wrong sequence number.
      This test is used to check that meter can handle if AARQ is sent with wrong sequence number.
      DLMS CTT 3.1: T_HDLC_INFO_N3
    • 19. Send AARQ without sending SNRM.
      This test is used to check that meter can handle if AARQ is sent without sending SNRM.
      DLMS CTT 3.1: T_HDLC_NDMOP_N1
    • 101. Check that meter don't accept frame if it's send twice.
      This test is used to check that meter can ignore frame if it's sent twice.

    Application Conformance Tests

    • 1. Initialize test
      Tests that meter is not answering for Get or Read request when the connection is not established. Test fails if meter reply something else than ConfirmedServiceError (SN referencing) or ExceptionResponse (LN referencing)..
      DLMS CTT 3.1: T_APPL_IDLE_N1
    • 2. Connect using wrong password.
      Connect using wrong password.
    • 4. Connect using protocol-version field.
      Connect using protocol-version field.
    • 5. Connect with unknown application context.
      Connect with unknown application context. Meter should reject the connection with ApplicationContextNameNotSupported,
      DLMS CTT 3.1: T_APPL_OPEN_5
    • 9. Send dedicated key when ciphering is not used.
      Send dedicated key when ciphering is not used.
      DLMS CTT 3.1: T_APPL_OPEN_9
  • Create new account
  • Reset your password

Hire Us!

Latest Releases

  • Tue, 06/17/2025 - 13:03
    Gurux.DLMS.Python 1.0.182
  • Wed, 06/04/2025 - 13:35
    gurux.dlms.c 9.0.2506.0401
  • Fri, 05/30/2025 - 08:30
    gurux.dlms.c 9.0.2505.3001
  • Tue, 05/27/2025 - 08:10
    Gurux.Serial.Android 2.0.12
  • Mon, 05/26/2025 - 08:39
    gurux.dlms.c 9.0.2505.2601

New forum topics

  • Day profile action item add error (String is not recognized as valid DateTime value)
  • Create gateway protocol in c
  • Error while reading event log object
  • GXDLMS Simulator – AssociationLogicalName Not Listed
  • Failed to read meter through raspberry pi 5 and probe
More
RSS feed
Privacy FAQ GXDN Issues Contact
Follow Gurux on Twitter Follow Gurux on Linkedin