setFrequencyBand() isn't works

Home Forums mDot/xDot setFrequencyBand() isn't works

Tagged: 

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #19549
    Eugene Lozovoy
    Participant

    Hello! I’m trying to change frequency band on my mdot with following code (based on latest MTDOT-BOX-EVB-Factory-Firmware):

        int32_t code;
        if ((code = dot->setFrequencyBand(mDot::FB_EU868)) != mDot::MDOT_OK) {
            std::string error = mDot::getReturnCodeString(code) + " - " + dot->getLastError();
            logError("CANNOT SET BAND: %s", error.c_str());
        }
        logTrace("BAND: %s", mDot::FrequencyBandStr(dot->getFrequencyBand()).c_str());
    

    but this code still printing “[TRACE] BAND: US915” on debug uart.

    After some exploration I found that setFrequencyBand() in libmDot-GCC_ARM.a from libmDot-mbed5 and libmDot-dev-mbed5 repos have following stub:

    Disassembly of section .text._ZN4mDot16setFrequencyBandERKh:
    
    00000000 <mDot::setFrequencyBand(unsigned char const&)>:
       0:   2000            movs    r0, #0
       2:   4770            bx      lr
    

    Does that mean building with gcc isn’t really supported/tested?

    #19550
    Mike Fiore
    Blocked

    Eugene,

    The ability to change the device’s factory configured frequency band isn’t in normal firmware. Can you help us understand why you need to do this?

    Cheers,
    Mike

    #19552
    Eugene Lozovoy
    Participant

    By default gcc-compiled firmware chooses US915 band, but my device (mtdot-box-g-868) intended to work in EU868 band.

    #19554
    Mike Fiore
    Blocked

    Eugene,

    That may mean the flash filesystem on your device has been corrupted. Can you share debug logs so we can diagnose the issue?

    Cheers,
    Mike

    #19572
    Eugene Lozovoy
    Participant

    Resolved by moving to opensource loramac-node stack.

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