Hi,
I created a project in Keil compiler for STM32f103. i added all source and include libraries.
but when i start compile i have below errors:
Error: L6218E: Undefined symbol svr_connected (referred from dlms.o).
Error: L6218E: Undefined symbol svr_isTarget (referred from dlms.o).
Not enough information to list image symbols.
Not enough information to list load addresses in the image map.
Finished: 2 information, 0 warning and 2 error messages.
"CubeMX\CubeMX.axf" - 2 Error(s), 9 Warning(s).
Target not created.
I cant find some functions implementation like:
svr_isTarget()
svr_connected()
svr_postRead()
svr_postWrite()
and svr_......
they only determine in serverevent.h file. and i can not find them in serverevents.c?
what is problem?
I checked , when I uncomment #define DLMS_IGNORE_MALLOC, most of errors go.
then my errors depend on memory allocation.
what is problem?
I use Keil uvision IDE and STM32F103C8T6 microcontroller.
how can i use server dlms.c library on it without mentioned problems?
thank you
Hi Mikko
I think this is wrong in "Using Gurux DLMS ANSI C component with microcontroller" page:
//Add Logical Name Association object for None authentication.
cosem_init2(&noneAssociation.base, DLMS_OBJECT_TYPE_ASSOCIATION_LOGICAL_NAME, NONE_ASSOCIATION);
oa_push(&settings->base.objects, &noneAssociation.base);
//Add Logical Name Association object for Low authentication.
cosem_init2(&lowAssociation.base, DLMS_OBJECT_TYPE_ASSOCIATION_LOGICAL_NAME, LOW_ASSOCIATION);
oa_push(&settings->base.objects, &noneAssociation.base);
in last line we must have : oa_push(&settings->base.objects, &lowAssociation.base);
I cant find some functions
I cant find some functions implementation like:
svr_isTarget()
svr_connected()
svr_postRead()
svr_postWrite()
and svr_......
they only determine in serverevent.h file. and i can not find them in serverevents.c?
what is problem?
I checked , when I uncomment
I checked , when I uncomment #define DLMS_IGNORE_MALLOC, most of errors go.
then my errors depend on memory allocation.
what is problem?
I use Keil uvision IDE and STM32F103C8T6 microcontroller.
how can i use server dlms.c library on it without mentioned problems?
thank you
Hi,
Hi,
You must implement svr_connected and svr_isTarget for your main.c file like this:
https://github.com/Gurux/GuruxDLMS.c/blob/9a684a6966589b0e59acdcea3d26b…
BR,
Mikko
yes . I got it.
yes . I got it.
Thank you Mikko.
Hi Mikko
Hi Mikko
I think this is wrong in "Using Gurux DLMS ANSI C component with microcontroller" page:
//Add Logical Name Association object for None authentication.
cosem_init2(&noneAssociation.base, DLMS_OBJECT_TYPE_ASSOCIATION_LOGICAL_NAME, NONE_ASSOCIATION);
oa_push(&settings->base.objects, &noneAssociation.base);
//Add Logical Name Association object for Low authentication.
cosem_init2(&lowAssociation.base, DLMS_OBJECT_TYPE_ASSOCIATION_LOGICAL_NAME, LOW_ASSOCIATION);
oa_push(&settings->base.objects, &noneAssociation.base);
in last line we must have : oa_push(&settings->base.objects, &lowAssociation.base);
right?
Hi,
Hi,
You are right. Thank you for pointing this out. This is now fixed.
BR,
Mikko
and another in "Creating DLMS
and another in "Creating DLMS compliant meter using Gurux DLMS Components" page:
Connected
Connected is called if authentication is succeeded.
Invalid Connection
Connected is called if authentication is failed.
both are same. It must differ. right?