mDot AU915 Device MIC Addr Invalid

Home Forums mDot/xDot mDot AU915 Device MIC Addr Invalid

Tagged: 

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #27237
    Yi Wei
    Participant

    Hi there,

    We are using AU915 mDots in P2P mode to transfer some messages (15 bytes long each message) at a 1 HZ frequency. After several hours of operation, the receiver started printing “Device MIC Addr Invalid” message and failed to receive anything, while the transmitter just kept printing out normal debug messages. The weird thing is, reset the receiver did not solve the problem but reset the transmitter did.

    Can someone help explain what is the MIC address and how to solve this problem please?

    Regards,
    Yi

    #27238
    Jason Reiss
    Keymaster

    Resetting the transmitter is the correct fix. The uplink counter must have passed the 16-bit boundary. Only 16-bits are sent in the frame, but the transmitter is calculating a MIC with a 32-bit. Resetting the counter on the transmitter to 0 allows the receiving end to recover.

    The next release and our current dev library, https://os.mbed.com/teams/MultiTech/code/libmDot-dev-mbed5/, has a change to only use the 16-bit value for MIC so the receiver can accept the packet without tracking the upper 16-bits of a 32-bit counter.

    #27239
    Jason Reiss
    Keymaster

    The MIC is 4 bytes appended to the packet determined cryptographically using the Network Session Key and CMAC hash algorithm. It is attached to each packet to ensure authenticity.

    #27252
    Yi Wei
    Participant

    Thank you very much Jason! Is there a way we can get the MIC and reboot the transmitter if it exceeds 16 bits length via code?

    #27253
    Jason Reiss
    Keymaster

    AT+ULC will give the uplink counter.

    #27254
    Jason Reiss
    Keymaster

    Reboot is not needed. Only to set AT+ULC=0 on the transmitter.

    #27262
    Yi Wei
    Participant

    Is there a way to do it through coding the firmware?

    #27263
    Jason Reiss
    Keymaster

    Are you asking how to set uplink counter using the library?
    Did you search the mDot.h header file for a function?

    #27264
    Yi Wei
    Participant

    Yes, I mean though the mDot.h library. So far the only function I found from the library related to this issue is resetNetworkSession function. I’m not sure whether it can fix my problem or not.

    #27266
    Jason Reiss
    Keymaster
    #27269
    Yi Wei
    Participant

    That should be what I need, thank you!

Viewing 11 posts - 1 through 11 (of 11 total)
  • You must be logged in to reply to this topic.