Compile Error for LoRaWAN

Hi there,
I have a LoRaWAN Node w/ HTCC-AB01 board working.
Now I tried to compile a change program and get a compile error.
Were there any changes?

Arduino: 1.8.13 (Windows 10), Board: “CubeCell-Board(HTCC-AB01), REGION_EU868, CLASS_A, OTAA, ON, UNCONFIRMED, OFF, ON, DEACTIVE, None”

WARNING: library LoRa claims to run on ASR650x-Arduino architecture(s) and may be incompatible with your current board which runs on CubeCell architecture(s).

libraries\LoRa\LoRaWan_APP.cpp.o: In function `getBatteryVoltage’:

C:\Users\install\AppData\Local\Arduino15\packages\CubeCell\hardware\CubeCell\1.0.0\libraries\LoRa\src/LoRaWan_APP.cpp:246: multiple definition of `getBatteryVoltage’

sketch\LoRaWan_APP.cpp.o:sketch/LoRaWan_APP.cpp:248: first defined here

libraries\LoRa\LoRaWan_APP.cpp.o: In function `BoardGetBatteryLevel’:

LoRaWan_APP.cpp:(.text.BoardGetBatteryLevel+0x0): multiple definition of `BoardGetBatteryLevel’

sketch\LoRaWan_APP.cpp.o:LoRaWan_APP.cpp:(.text.BoardGetBatteryLevel+0x0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o: In function `lwan_dev_params_update’:

LoRaWan_APP.cpp:(.text.lwan_dev_params_update+0x0): multiple definition of `lwan_dev_params_update’

sketch\LoRaWan_APP.cpp.o:LoRaWan_APP.cpp:(.text.lwan_dev_params_update+0x0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o: In function `SendFrame’:

LoRaWan_APP.cpp:(.text.SendFrame+0x0): multiple definition of `SendFrame’

sketch\LoRaWan_APP.cpp.o:LoRaWan_APP.cpp:(.text.SendFrame+0x0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o: In function `LoRaWanClass::init(eDeviceClass, eLoRaMacRegion_t)’:

LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass4initE12eDeviceClass16eLoRaMacRegion_t+0x0): multiple definition of `LoRaWanClass::init(eDeviceClass, eLoRaMacRegion_t)’

sketch\LoRaWan_APP.cpp.o:LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass4initE12eDeviceClass16eLoRaMacRegion_t+0x0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o: In function `LoRaWanClass::join()’:

LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass4joinEv+0x0): multiple definition of `LoRaWanClass::join()’

sketch\LoRaWan_APP.cpp.o:LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass4joinEv+0x0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o: In function `LoRaWanClass::send()’:

LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass4sendEv+0x0): multiple definition of `LoRaWanClass::send()’

sketch\LoRaWan_APP.cpp.o:LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass4sendEv+0x0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o: In function `LoRaWanClass::cycle(unsigned long)’:

LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass5cycleEm+0x0): multiple definition of `LoRaWanClass::cycle(unsigned long)’

sketch\LoRaWan_APP.cpp.o:LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass5cycleEm+0x0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o: In function `LoRaWanClass::sleep()’:

LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass5sleepEv+0x0): multiple definition of `LoRaWanClass::sleep()’

sketch\LoRaWan_APP.cpp.o:LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass5sleepEv+0x0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o: In function `LoRaWanClass::ifskipjoin()’:

LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass10ifskipjoinEv+0x0): multiple definition of `LoRaWanClass::ifskipjoin()’

sketch\LoRaWan_APP.cpp.o:LoRaWan_APP.cpp:(.text._ZN12LoRaWanClass10ifskipjoinEv+0x0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o:(.bss+0xb0): multiple definition of `LoRaWAN’

sketch\LoRaWan_APP.cpp.o:(.bss+0xb0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o:(.bss+0xa8): multiple definition of `LoRaMacCallback’

sketch\LoRaWan_APP.cpp.o:(.bss+0xa8): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o:(.bss+0x98): multiple definition of `LoRaMacPrimitive’

sketch\LoRaWan_APP.cpp.o:(.bss+0x98): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o:(.bss+0x1): multiple definition of `deviceState’

sketch\LoRaWan_APP.cpp.o:(.bss+0x1): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o:(.data+0x2): multiple definition of `modeLoraWan’

sketch\LoRaWan_APP.cpp.o:(.data+0x2): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o:(.bss+0x0): multiple definition of `passthroughMode’

sketch\LoRaWan_APP.cpp.o:(.bss+0x0): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o:(.bss+0xb4): multiple definition of `txDutyCycleTime’

sketch\LoRaWan_APP.cpp.o:(.bss+0xb4): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o:(.bss+0x18): multiple definition of `appData’

sketch\LoRaWan_APP.cpp.o:(.bss+0x18): first defined here

libraries\LoRa\LoRaWan_APP.cpp.o:(.data+0x1): multiple definition of `appDataSize’

sketch\LoRaWan_APP.cpp.o:(.data+0x1): first defined here

sketch\LoRaWan_APP.cpp.o: In function `lwan_dev_params_update’:

sketch/LoRaWan_APP.cpp:453: undefined reference to `userChannelsMask’

C:\Users\install\AppData\Local\Arduino15\packages\CubeCell\hardware\CubeCell\1.0.0/cores/asr650x/projects/CubeCellLib.a(AT_Command.o): In function `getDevParam’:

D:\lib/AT_Command.c:1241: undefined reference to `userChannelsMask’

C:\Users\install\AppData\Local\Arduino15\packages\CubeCell\hardware\CubeCell\1.0.0/cores/asr650x/projects/CubeCellLib.a(AT_Command.o): In function `onUartEvent’:

D:\lib/AT_Command.c:1082: undefined reference to `userChannelsMask’

C:\Users\install\AppData\Local\Arduino15\packages\CubeCell\hardware\CubeCell\1.0.0/cores/asr650x/projects/CubeCellLib.a(AT_Command.o): In function `printDevParam’:

D:\lib/AT_Command.c:1393: undefined reference to `userChannelsMask’

collect2.exe: error: ld returned 1 exit status

exit status 1

Error compiling for board CubeCell-Board(HTCC-AB01).

Hi

why do you have a LoRaWan_APP.cpp file in your sketch directory?

I did believe I have to include it. Am I wrong?

I deleted the LoRaWan_APP.cpp and LoRaWan_APP.h from my sketch folder. But, …

#include <LoRaWan_APP.h>
#include “Arduino.h”

Arduino: 1.8.13 (Windows 10), Board: “CubeCell-Board(HTCC-AB01), REGION_EU868, CLASS_A, OTAA, ON, UNCONFIRMED, OFF, ON, DEACTIVE, None”

WARNING: library LoRa claims to run on ASR650x-Arduino architecture(s) and may be incompatible with your current board which runs on CubeCell architecture(s).

libraries\LoRa\LoRaWan_APP.cpp.o: In function `lwan_dev_params_update’:

C:\Users\install\AppData\Local\Arduino15\packages\CubeCell\hardware\CubeCell\1.0.0\libraries\LoRa\src/LoRaWan_APP.cpp:440: undefined reference to `userChannelsMask’

C:\Users\install\AppData\Local\Arduino15\packages\CubeCell\hardware\CubeCell\1.0.0/cores/asr650x/projects/CubeCellLib.a(AT_Command.o): In function `getDevParam’:

D:\lib/AT_Command.c:1241: undefined reference to `userChannelsMask’

C:\Users\install\AppData\Local\Arduino15\packages\CubeCell\hardware\CubeCell\1.0.0/cores/asr650x/projects/CubeCellLib.a(AT_Command.o): In function `onUartEvent’:

D:\lib/AT_Command.c:1082: undefined reference to `userChannelsMask’

C:\Users\install\AppData\Local\Arduino15\packages\CubeCell\hardware\CubeCell\1.0.0/cores/asr650x/projects/CubeCellLib.a(AT_Command.o): In function `printDevParam’:

D:\lib/AT_Command.c:1393: undefined reference to `userChannelsMask’

collect2.exe: error: ld returned 1 exit status

exit status 1

Error compiling for board CubeCell-Board(HTCC-AB01).

what ist that file: D:\lib/AT_Command.c

it seams that you have mixed your librarys in different locations

My problem was quite simple. I thought to have a library mismatch. After changing the computer and getting the same error. I looked in the source.

The line
/LoraWan channelsmask, default channels 0-7/
uint16_t userChannelsMask[6]={ 0x00FF,0x0000,0x0000,0x0000,0x0000,0x0000 };
was missing. I have no idea, if it was deleted or missing from the beginning.
The old source was running over months.
But now it works. Thanks.