Regarding using MDot Library version 4.0.0 and AEP Conduit firmware.

Home Forums mDot/xDot Regarding using MDot Library version 4.0.0 and AEP Conduit firmware.

Viewing 13 posts - 1 through 13 (of 13 total)
  • Author
    Posts
  • #31157
    Ajay K
    Participant

    Does the MDot Library version 4.0.0 work only with a specific version of the conduit firmware for the AEP Conduit model?

    Thanks,
    Ajay

    #31158
    Jason Reiss
    Keymaster

    The Dot 4.0.0 includes support for LoRaWAN 1.0.4. This implements join nonce counter validation by default that verifies that the Join Accept nonce value has incremented from the last received value. Some network servers, such as TTN community, may return random nonce values that can cause the join to fail with this validation enabled.

    This behavior can be disabled with this function if needed. Or with AT+JNV=0 in AT firmware.

    
            /**
             * Enable/disable Join Nonce validation for App Nonce in Join Accept
             * Default is enabled
             */
            int32_t setJoinNonceValidation(bool enable);
            bool getJoinNonceValidation();
    

    mPower 5.2.1 or greater is compatible and implements the join nonce counter, older versions provide random nonce values.

    #31172
    Jason Reiss
    Keymaster

    Also with FOTA enabled the Dot will send GPS Time request MAC commands to sync the time. This can affect some network servers that do not have support for the GPS Time command.

    #31175
    Ajay K
    Participant

    Thanks Jason for taking the time to respond. Few follow up questions:

    1) You mentioned the mDot 4.0 “implements join nonce counter validation by default that verifies that the Join Accept nonce value has incremented from the last received value”. Does that mean if I disable this feature via the function calls you mentioned, can I work with older Conduit firmwares upto 1.7.4? Since most of our productions conduits are still on 1.7.4 firmware version.

    2) Also you mentioned “with FOTA enabled the Dot will send GPS Time request MAC commands to sync the time. This can affect some network servers that do not have support for the GPS Time command.”. What network servers don’t have support for this command, is this only supported in certain conduit firmwares, or is this a hardware differences between the AEP based conduits that are shipped today?

    Bottom line does using 4.0 dot library best benefit from using the latest conduit firmware currently I believe it is 5.2.1.

    Thanks,
    Ajay

    #31176
    Jason Reiss
    Keymaster

    Indeed a protocol must be implemented by both sides to be useful.

    The 4.0.0 release has redundant config and session storage saved apart from the file system. A corrupted file system will no longer cause loss of credentials, key or counters needed to join the network.

    #31178
    Ajay K
    Participant

    Thanks Jason for your response. Just curious since the latest mdot library 4.0 has been released and it pairs with mbed os 6.1, how come I don’t see this version of library available in the online compiler revisions for the library?

    Also if I would like to build my firmware offline with this version, where can I pull the 4.0 library from and are there any specific version of the arm compiler I should be using since this is paired with mbed os 6.1?

    Thanks,
    Ajay

    #31179
    Jason Reiss
    Keymaster

    We changed repos as the old one had mbed5 in the name.
    https://github.com/MultiTechSystems

    #31180
    Ajay K
    Participant

    Jason, it seems like mbed-os doesn’t seem to have a link for the mbed-os-6.1 release. Was this is a tools release? Do you have the github location for the mbed-os that was used to compile the mdot 4.0 library?

    Thanks,
    Ajay

    #31181
    Ajay K
    Participant

    I got the following compilation Error:

    No member named ‘chrono’ in namespace ‘std’ in “libmDot/Lora.h”, Line: 116, Col: 16. This is while compiling on the online compiler.

    Thanks,
    Ajay

    #31182
    Jason Reiss
    Keymaster
    #31183
    Ajay K
    Participant

    Any thoughts on the compilation error I am getting when compiling a custom firmware in the online compiler?

    Thanks,
    Ajay

    #31184
    Jason Reiss
    Keymaster

    I can reproduce the error if I choose mbed-os-5.15.1 revision

    #31192
    Ajay K
    Participant

    Thanks Jason for your help. I matched the release tag and used the right mbed-os-6.1.0. As I was using the tools release after that one. Anyway I am compiling all of this offline and was wondering if I should be worried about the warning I get while compiling the mDotEvents.h.

    ./libmDot/mDotEvent.h: In member function 'virtual void mDotEvent::ServerTime(uint32_t, uint8_t)':
    ./libmDot/mDotEvent.h:279:64: warning: 'int mbed::TimerBase::read_ms() const' is deprecated: Use the Chrono-based elapsed_time method.  If integer milliseconds are needed, you can use <code>duration_cast<milliseconds>(elapsed_time()).count()</code> [since mbed-os-6.0.0] [-Wdeprecated-declarations]
      279 |                 std::chrono::milliseconds(_timeSinceTx.read_ms());

    Thanks,
    Ajay

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