example fails on xdot out of the box

Home Forums mDot/xDot example fails on xdot out of the box

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #29954
    Justin Spangaro
    Participant

    Following the video instructions here for the xdot

    “MultiConnect® mDot(tm) and xDot(tm) using ARM mbed compiler”

    the example does not compile.

    Error thrown is:
    Error: Unknown type name ‘XBEE_AD0’ in “examples/src/ota_example.cpp”, Line: 50, Col: 14

    Digging into this, XBEE_ADO should be defined in the PinName enum, which it seems normally would be provided in pinnames.h

    However, searching all files there is no such enum and no pinnames.h file. So it seems to be missing.

    The offending line is here:

    #if defined(TARGET_XDOT_L151CC)
    I2C i2c(I2C_SDA, I2C_SCL);
    ISL29011 lux(i2c);
    #else
    AnalogIn lux(XBEE_AD0);
    #endif

    So the example does not seem to have TARGET_XDOT_L151CC set by default when invoking the xdot platform.

    I #defined TARGET_XDOT_L151CC in example_config.h to try and fix the problem, which got a lot further than before. This suggests that the explanation of the example is probably only valid for mDot users but broken for xdot users.

    In any event, the build was still full of warnings:

    Warning: Equality comparison with extraneous parentheses [-Wparentheses-equality] in “extras/mbed-os.lib/features/nfc/stack/transceiver/pn512/pn512_rf.c”, Line: 110, Col: 26
    Warning: Equality comparison with extraneous parentheses [-Wparentheses-equality] in “extras/mbed-os.lib/features/nfc/stack/transceiver/pn512/pn512_poll.c”, Line: 540, Col: 61
    Warning: Implicit declaration of function ‘wait_ns’ is invalid in C99 [-Wimplicit-function-declaration] in “extras/mbed-os.lib/platform/mbed_sleep_manager.c”, Line: 202, Col: 9
    Warning: ‘IS_I2C_CLOCK_SPEED’ macro redefined [-Wmacro-redefined] in “extras/mbed-os.lib/targets/TARGET_STM/TARGET_STM32L1/device/stm32l1xx_ll_i2c.c”, Line: 70, Col: 9
    Warning: ‘IS_I2C_DUTY_CYCLE’ macro redefined [-Wmacro-redefined] in “extras/mbed-os.lib/targets/TARGET_STM/TARGET_STM32L1/device/stm32l1xx_ll_i2c.c”, Line: 72, Col: 9
    Warning: Equality comparison with extraneous parentheses [-Wparentheses-equality] in “extras/mbed-os.lib/usb/device/USBDevice/USBDevice.cpp”, Line: 619, Col: 45
    Warning: L3912W: Option ‘legacyalign’ is deprecated.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(ChannelPlan.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(ChannelPlan_US915.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(MTSText.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(MTSLog.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(mDot.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(LoRaConfig.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(Crypto.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(Lora.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(Mote.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(Mac.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(WakeUp_STM_RTC.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(Link.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6869W: /src/libxDot-mbed5/libxDot-ARMC6.ar(SxRadio1272.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.
    Warning: L6439W: Multiply defined Global Symbol mbed::Ticker::~Ticker__sub_object() defined in i._ZN4mbed6TickerD1Ev(/src/libxDot-mbed5/libxDot-ARMC6.ar(Link.o)) rejected in favor of Symbol defined in .text._ZN4mbed6TickerD2Ev(../../build/mbed-os/components/802.15.4_RF/atmel-rf-driver/source/NanostackRfPhyAtmel.MTB_MTS_XDOT.o).
    Warning: L6439W: Multiply defined Global Symbol mDotEvent::~mDotEvent__sub_object() defined in i._ZN9mDotEventD1Ev(/src/libxDot-mbed5/libxDot-ARMC6.ar(mDot.o)) rejected in favor of Symbol defined in .text._ZN9mDotEventD2Ev(../../build/examples/src/ota_example.MTB_MTS_XDOT.o).
    Warning: L6439W: Multiply defined Global Symbol mbed::Timeout::~Timeout__sub_object() defined in i._ZN4mbed7TimeoutD1Ev(/src/libxDot-mbed5/libxDot-ARMC6.ar(Link.o)) rejected in favor of Symbol defined in .text._ZN4mbed7TimeoutD2Ev(../../build/mbed-os/drivers/Timeout.MTB_MTS_XDOT.o).
    Error: L6218E: Undefined symbol mts::Text::bin2hexString(const std::__1::vector<unsigned char, std::__1::allocator<unsigned char>>&, const char*, bool, bool) (referred from ../../build/examples/src/dot_util.MTB_MTS_XDOT.o).
    Info: Unable to download. Fix the reported errors…

    I am still confused about where PinName type is declared as I was unable to locate it.

    It is looking like a can of worms at this point, to run a simple example complete with video how-to instructions that should work out of the box but doesn’t seem to.

    There may be some user error contributing, but the instruction steps are pretty straightforward so there ought not be a problem.

    Please advise if there is a solution to enable any of the examples to compile as advertised on the xdot.

    While we are on the subject, line 30 of ota_example.cpp appears to be different now from when the video was created (see the section of the video where edits were done to that file).

    static lora::NetworkType network_type = lora::PUBLIC_LORAWAN;

    Thanks.

    #30632
    Justin Spangaro
    Participant

    Hi,

    I hit this problem again:

    Warning: L6869W: /src/libxDot-mbed5/plans/libxDot-ARMCC.ar(MTSText.o) requested the Rogue Wave Standard C++ Library which has been removed from the product. This might cause link errors because libc++ is used instead.

    etc.

    I will create a separate bug request for this issue since this one has not attracted a response.

    #30635
    Jason Reiss
    Keymaster

    There should not be a libxDot-ARMCC.ar file in the plans directory of the libxDot-mbed5 library.

    The ARMCC archive is replaced in the latest releases with an ARMC6 compiled version.

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