Don't comment the topic if you have a new question.
You can create a new topic selecting correct category from Gurux Forum and then create a new topic selecting "New Topic" from the top left.
By ajones, 3 September, 2013
I have downloaded the sources from GitHub (with difficulty because they needed moving to to a dirrent directory structure) and the project doesn't build. This appears to be version 7.0.11.1
I have two recent install version, v7.0.13.0 and v7.0.15.1 but these are giving me
problems when reading a meter.
V7.0.13.0 give an Invalid Packet error dialog when it attempts a keep alive.
V7.0.15.1 also displays that issues but also throws excpetion when 'Refresh' is performed and the meter responds with the AssociationLN object list.
System.NullReferenceException: Object reference not set to an instance of an object.
at GXDLMSDirector.MainForm.AddNode(GXDLMSObject it, TreeNode deviceNode, ListViewGroup group) in C:\Projects\GXDLMSDirector\Development\MainForm.cs:line 2157
at GXDLMSDirector.MainForm.GroupItems(Boolean bGroup) in C:\Projects\GXDLMSDirector\Development\MainForm.cs:line 2782
We are using the DLMS Director to exercise a simple DLMS Server that we have written for a demonstration, so it is possible the error is due to an invalid DLMS Message format.
Thanks for uploading new DLMS Director source code but I still can't get it to compile.
This is the first 4 error messages from 41 errors and 4 warnings :
Error 27 'Gurux.DLMS.GXDLMSClient' does not contain a definition for 'GetObjectsRequest' and no extension method 'GetObjectsRequest' accepting a first argument of type 'Gurux.DLMS.GXDLMSClient' could be found (are you missing a using directive or an assembly reference?) C:\Projects\Project-Sensus-Comms-Hub\Examples\GuruxDev\GXDLMSDirector\Development\GXDLMSCommunicator.cs 841 49 GXDLMSDirector_2010
Error 23 'Gurux.DLMS.GXDLMSClient' does not contain a definition for 'Objects' and no extension method 'Objects' accepting a first argument of type 'Gurux.DLMS.GXDLMSClient' could be found (are you missing a using directive or an assembly reference?) C:\Projects\Project-Sensus-Comms-Hub\Examples\GuruxDev\GXDLMSDirector\Development\GXDLMSDevice.cs 448 36 GXDLMSDirector_2010
Error 6 'Gurux.DLMS.Objects.GXDLMSGprsSetup' does not contain a definition for 'DefaultQualityOfService' and no extension method 'DefaultQualityOfService' accepting a first argument of type 'Gurux.DLMS.Objects.GXDLMSGprsSetup' could be found (are you missing a using directive or an assembly reference?) C:\Projects\Project-Sensus-Comms-Hub\Examples\GuruxDev\GXDLMSDirector\Development\Views\GXDLMSGprsSetupView.cs 98 45 GXDLMSDirector_2010
Error 7 'Gurux.DLMS.Objects.GXDLMSGprsSetup' does not contain a definition for 'DefaultQualityOfService' and no extension method 'DefaultQualityOfService' accepting a first argument of type 'Gurux.DLMS.Objects.GXDLMSGprsSetup' could be found (are you missing a using directive or an assembly reference?) C:\Projects\Project-Sensus-Comms-Hub\Examples\GuruxDev\GXDLMSDirector\Development\Views\GXDLMSGprsSetupView.cs 99
I am stilling having various issues trying to use DLMS Director 15.1.
I built the Server example, I run DLMS Director, add Gurux device, connect to the device and then perform a refresh and the DLMS Director display an error dialog "Exception has been thrown by the target of an invocation."
When I debug I find that the code in AddNode() is trying reference a pointer that is NULL :
it.Parent.Tag.GetHashCode()
The code has changed from using it.Parent.Parent to it.Parent.Tag and Tag is NULL.
Perhaps the latest code has been uploaded to GitHub. To build the Director I used the following instructions :
1. Download GXDLMSDirector-master.zip from https://github.com/Gurux
2. Unzipped and renamed folder GXDLMSDirector.
3. Opened Development\GXDLMSDirector_2010.sln
Failed with following error : one or more projects not loaded correctly
• GXCom\Protocols\Gurux.DLMS.Net\Development\Gurux.DLMS_2010.csproj
• GXCom\GXMedias\Gurux.Net\Development\Gurux.Net_2010.csproj
• GXCom\GXMedias\Gurux.Serial\Development\Gurux.Serial_2010.csproj
• GXCom\Gurux.Common\Development\Gurux.Common_2010.csproj
• GXCom\GXMedias\Gurux.Terminal\Development\Gurux.Terminal_2010.csproj
4. Downloaded Gurux.Net, unzipped, renamed to remove –master and put in folder GXCom\GXMedias
5. Downloaded Gurux.Common, unzipped, renamed to remove –master and put in folder GXCom
6. Downloaded Gurux.Serial, unzipped, renamed to remove –master and put in folder GXCom\GXMedias
7. Downloaded Gurux.Terminal, unzipped, renamed to remove –master and put in folder GXCom\GXMedias
8. Downloaded Gurux.DLMS.Net, unzipped, renamed to remove –master and put in folder GXCom\Protocols
Also I changed KeepAlive in GXDLMSCommunicator.cs to not perform a KeepAlive if GetKeepAlive returns null - prevent Invalid Packet being displayed within my system.
if (data != null) // GetKeepAlive return null when keep alive is not required
{
GXLogWriter.WriteLog("Send Keep Alive", data);
reply = ReadDLMSPacket(data);
m_Cosem.GetDataFromPacket(reply, ref allData);
}
You was right. We was able to dublicate GetHashCode bug.
We fixed it. New version from GXDLMSDirector is in GitHub and we have released new version 7.0.17.1
I have downloaded version v7.0.17.1 but the only change to the source code seems to be the version number - I can see some small changes but the application behaves the same way still.
In particular the change to line 628 GXDLMSDevices.cs is never executed in my test sequence.
Changes are made for version 7.0.16.1. We forget to update assembly.cs (version number) to GitHub. For this reason we was forced to make version 7.0.17.1.
We can't dublicate your issue. Try to download install packet amd run it. It this problem still happening?
What meter you are using?
If that is still happening select "Library versions" from Help menu and post them here.
I have check that all my GitHub repositories are up to date and re-built my DLMS Director.
I then create a new Device, Gurux, Port 4061 and my local IP address, connect and refresh and the DLMS Director throws an exception in MainForm.cs RemoveObject()
Ln
1736 else if (target is GXDLMSDevice)
1737 {
1738 GXDLMSDevice dev = target as GXDLMSDevice;
1739 while(dev.Objects.Count != 0)
1740 {
1741 RemoveObject(dev.Objects[0]);
1742 }
Ln 1739 causes the System.NullReferenceException because dev.Objects hasn't been initialised.
Library versions as requested (I can supplied all the others if needed) :
.NET Framework 3.5 SP 1 3.5.30729.5420
.NET Framework 4.0 4.5.50709
---GURUX--- -----
GXDLMSDirector.vshost.exe 11.0.50727.1
Gurux.Common.dll 7.0.16.1
Gurux.DLMS.dll 7.0.11.1
Gurux.Net.dll 7.0.14.1
Gurux.Serial.dll 7.0.15.1
Gurux.Terminal.dll 1.0.2.0
We have updated projects to GitHub.
Get latest version from GXDLMSDirector and Gurux.DLMS.Net projects.
There is also new version to download in our web site.
GitHub and Download Versions
Hi,
You are right about GitHub paths. We and Club members are using SVN paths.
We will do something about this during this month.
We just updated source codes also to GitHub.
What meter you try to read (Manufacturer and model)?
What Operation System you are using?
We can't dublicate your issue. We will fix it as soon as we can dublicate it. :-)
BR,
Mikko
Build Problems
We are using the DLMS Director to exercise a simple DLMS Server that we have written for a demonstration, so it is possible the error is due to an invalid DLMS Message format.
Thanks for uploading new DLMS Director source code but I still can't get it to compile.
This is the first 4 error messages from 41 errors and 4 warnings :
Error 27 'Gurux.DLMS.GXDLMSClient' does not contain a definition for 'GetObjectsRequest' and no extension method 'GetObjectsRequest' accepting a first argument of type 'Gurux.DLMS.GXDLMSClient' could be found (are you missing a using directive or an assembly reference?) C:\Projects\Project-Sensus-Comms-Hub\Examples\GuruxDev\GXDLMSDirector\Development\GXDLMSCommunicator.cs 841 49 GXDLMSDirector_2010
Error 23 'Gurux.DLMS.GXDLMSClient' does not contain a definition for 'Objects' and no extension method 'Objects' accepting a first argument of type 'Gurux.DLMS.GXDLMSClient' could be found (are you missing a using directive or an assembly reference?) C:\Projects\Project-Sensus-Comms-Hub\Examples\GuruxDev\GXDLMSDirector\Development\GXDLMSDevice.cs 448 36 GXDLMSDirector_2010
Error 6 'Gurux.DLMS.Objects.GXDLMSGprsSetup' does not contain a definition for 'DefaultQualityOfService' and no extension method 'DefaultQualityOfService' accepting a first argument of type 'Gurux.DLMS.Objects.GXDLMSGprsSetup' could be found (are you missing a using directive or an assembly reference?) C:\Projects\Project-Sensus-Comms-Hub\Examples\GuruxDev\GXDLMSDirector\Development\Views\GXDLMSGprsSetupView.cs 98 45 GXDLMSDirector_2010
Error 7 'Gurux.DLMS.Objects.GXDLMSGprsSetup' does not contain a definition for 'DefaultQualityOfService' and no extension method 'DefaultQualityOfService' accepting a first argument of type 'Gurux.DLMS.Objects.GXDLMSGprsSetup' could be found (are you missing a using directive or an assembly reference?) C:\Projects\Project-Sensus-Comms-Hub\Examples\GuruxDev\GXDLMSDirector\Development\Views\GXDLMSGprsSetupView.cs 99
Thanks,
Adrian
Build Problems
Hi,
I did try to read Iskraemeco meter that supports Logical Name Referencing and it works without problems.
I updated new version from Gurux DLMS component to GitHub.
OBIS descriptions are now updated automatically.
Download Gurux.DLMS.server.Example.Net and try with that.
https://github.com/Gurux/Gurux.DLMS.server.Example.Net
Select Gurux to manufacturer.
Logical Name DLMS Server in port 4061.
Let us know if you still have problems.
Build
I can't try anything at the moment as I can't get the DLMS Director so build.
See error messages in previous post.
Regards,
Adrian
Server Exaqmple
Mikko,
I am stilling having various issues trying to use DLMS Director 15.1.
I built the Server example, I run DLMS Director, add Gurux device, connect to the device and then perform a refresh and the DLMS Director display an error dialog "Exception has been thrown by the target of an invocation."
When I debug I find that the code in AddNode() is trying reference a pointer that is NULL :
it.Parent.Tag.GetHashCode()
The code has changed from using it.Parent.Parent to it.Parent.Tag and Tag is NULL.
Perhaps the latest code has been uploaded to GitHub. To build the Director I used the following instructions :
1. Download GXDLMSDirector-master.zip from https://github.com/Gurux
2. Unzipped and renamed folder GXDLMSDirector.
3. Opened Development\GXDLMSDirector_2010.sln
Failed with following error : one or more projects not loaded correctly
• GXCom\Protocols\Gurux.DLMS.Net\Development\Gurux.DLMS_2010.csproj
• GXCom\GXMedias\Gurux.Net\Development\Gurux.Net_2010.csproj
• GXCom\GXMedias\Gurux.Serial\Development\Gurux.Serial_2010.csproj
• GXCom\Gurux.Common\Development\Gurux.Common_2010.csproj
• GXCom\GXMedias\Gurux.Terminal\Development\Gurux.Terminal_2010.csproj
4. Downloaded Gurux.Net, unzipped, renamed to remove –master and put in folder GXCom\GXMedias
5. Downloaded Gurux.Common, unzipped, renamed to remove –master and put in folder GXCom
6. Downloaded Gurux.Serial, unzipped, renamed to remove –master and put in folder GXCom\GXMedias
7. Downloaded Gurux.Terminal, unzipped, renamed to remove –master and put in folder GXCom\GXMedias
8. Downloaded Gurux.DLMS.Net, unzipped, renamed to remove –master and put in folder GXCom\Protocols
Also I changed KeepAlive in GXDLMSCommunicator.cs to not perform a KeepAlive if GetKeepAlive returns null - prevent Invalid Packet being displayed within my system.
if (data != null) // GetKeepAlive return null when keep alive is not required
{
GXLogWriter.WriteLog("Send Keep Alive", data);
reply = ReadDLMSPacket(data);
m_Cosem.GetDataFromPacket(reply, ref allData);
}
GitHub
Hi Adrian,
Sorry for slow reply. I was out of office.
I downloaded latest versions fro GitHub and build succeeded.
What Visual Studio version you are using?
We will check this GetHashCode issue. I'll let you know if we found anything.
All meters do not support keepalive. You can just set Inactivity mode to none from Manufacturer settings. You will find it from Tools menu.
BR,
Mikko
Bug fixed.
Hi,
You was right. We was able to dublicate GetHashCode bug.
We fixed it. New version from GXDLMSDirector is in GitHub and we have released new version 7.0.17.1
BR,
Mikko
Mikko,I have downloaded
Mikko,
I have downloaded version v7.0.17.1 but the only change to the source code seems to be the version number - I can see some small changes but the application behaves the same way still.
In particular the change to line 628 GXDLMSDevices.cs is never executed in my test sequence.
Thanks,
Adrian
Source codes
Hi Adrian,
Changes are made for version 7.0.16.1. We forget to update assembly.cs (version number) to GitHub. For this reason we was forced to make version 7.0.17.1.
We can't dublicate your issue. Try to download install packet amd run it. It this problem still happening?
What meter you are using?
If that is still happening select "Library versions" from Help menu and post them here.
BR,
Mikko
I have check that all my
I have check that all my GitHub repositories are up to date and re-built my DLMS Director.
I then create a new Device, Gurux, Port 4061 and my local IP address, connect and refresh and the DLMS Director throws an exception in MainForm.cs RemoveObject()
Ln
1736 else if (target is GXDLMSDevice)
1737 {
1738 GXDLMSDevice dev = target as GXDLMSDevice;
1739 while(dev.Objects.Count != 0)
1740 {
1741 RemoveObject(dev.Objects[0]);
1742 }
Ln 1739 causes the System.NullReferenceException because dev.Objects hasn't been initialised.
Library versions as requested (I can supplied all the others if needed) :
.NET Framework 3.5 SP 1 3.5.30729.5420
.NET Framework 4.0 4.5.50709
---GURUX--- -----
GXDLMSDirector.vshost.exe 11.0.50727.1
Gurux.Common.dll 7.0.16.1
Gurux.DLMS.dll 7.0.11.1
Gurux.Net.dll 7.0.14.1
Gurux.Serial.dll 7.0.15.1
Gurux.Terminal.dll 1.0.2.0
Thanks,
Adrian
Projects updated.
Hi,
We have updated projects to GitHub.
Get latest version from GXDLMSDirector and Gurux.DLMS.Net projects.
There is also new version to download in our web site.
BR,
Mikko
Still doesn't work. I updated
Still doesn't work.
I updated GXDLMSDirector from GitHub but the GitHub repository Gurux.DLMS.Net hasn't been updated since 9th September.
Cheers,
Adrian
Strange
Hi Adrian,
When I go the GitHub it shows that we have updated source codes in 4th October. Can you see version 7.0.14.1 in the log page?
http://github.com/Gurux/Gurux.DLMS.Net/commits/master/Development