There is no reason why read failed. You can connect using high authentication. Try to read for example clock-object without reading the association view. I know that some meters don't implement an association view for all associations.
If you select "Refresh" from the "File" menu in GXDLMSDirector is it work with High authentication?
If it is working, can you add the first four messages when you establish the connection with GXDLMSDirector?
Object list is not implemented for High Association for this meter. You can still read the objects using High authentication. Don't just read the association view with high authentication.
You can read association view using low authentication and save it with -o parameter.
Then read your meter using high authentication and use -o parameter.
Something like:
- a Low -P password4low -o output.xml
- a High -P password4High -o output.xml
That is the error thrown to me when I select "Refresh" from the "File" menu in GXDLMSDirector, it turns out to be the same error I initially got from the Python Script.
Furthermore, let me note that the name of meter is HEXING and I read on https://www.gurux.fi/GXDLMSDirectorExample, that Hexing is not support Association View. All objects are added manually.
Also, I don't know the Low Authentication password, I only have access to the High Authentication password. Is there any other way I can read the objects using High authentication?
You need to add objects by yourself. You need to know what objects the meter can offer.
Search readAll method from GXDLMSReader. Comment lines from initializeConnection to except. Then add objects what you want to read. Like this:
self.initializeConnection()
d = GXDLMSData("LOGICAL NAME")
self.read(d, 2)
The reason is usually that your data type is wrong or you must use other authentication levels.
If you read association view can you see this object? If you can't you need to use another authentication level. Otherwise check the object type is data.
I tested this with one meter and it worked like expected. Can you try to run this with -t Verbose parameter?
Paster meter reply here. The reply is enough.
d = GXDLMSDisconnectControl("0.0.96.3.10.255")
val=self.read(d, 2)
Self.showValue(2,val)
However, what I expect from DLMSDisconnectControl is to disconnect and reconnect the latching relay in the meter. It actually works on the DLMS Director. What command do I need to use on python script.
hello Kurumi,
hello Kurumi,
Please, what could be the cause of this error. [Access Error : Device reports Read-Write denied.]
thank you
Hi,
Hi,
There is no reason why read failed. You can connect using high authentication. Try to read for example clock-object without reading the association view. I know that some meters don't implement an association view for all associations.
BR,
Mikko
Hi,
Hi,
I have been able to get this working using GURUX DIRECTOR and the Its already on authentication high and the password is correct.
So How do I read individual registers like the clock-object. PLEASE put me through.
BR,
Toni
Hi,
Hi,
If you select "Refresh" from the "File" menu in GXDLMSDirector is it work with High authentication?
If it is working, can you add the first four messages when you establish the connection with GXDLMSDirector?
BR,
Mikko
10:31:34 10:31:34.561 Info
The refresh Isn't working.
Hi,
Hi,
Please, don't create empty topics.
Object list is not implemented for High Association for this meter. You can still read the objects using High authentication. Don't just read the association view with high authentication.
You can read association view using low authentication and save it with -o parameter.
Then read your meter using high authentication and use -o parameter.
Something like:
- a Low -P password4low -o output.xml
- a High -P password4High -o output.xml
BR,
Mikko
GetObjects failed. Access
****GetObjects failed. Access Error : Device reports Read-Write denied.****
That is the error thrown to me when I select "Refresh" from the "File" menu in GXDLMSDirector, it turns out to be the same error I initially got from the Python Script.
Furthermore, let me note that the name of meter is HEXING and I read on https://www.gurux.fi/GXDLMSDirectorExample, that Hexing is not support Association View. All objects are added manually.
Also, I don't know the Low Authentication password, I only have access to the High Authentication password. Is there any other way I can read the objects using High authentication?
Hi,
Hi,
You need to add objects by yourself. You need to know what objects the meter can offer.
Search readAll method from GXDLMSReader. Comment lines from initializeConnection to except. Then add objects what you want to read. Like this:
self.initializeConnection()
d = GXDLMSData("LOGICAL NAME")
self.read(d, 2)
BR,
Mikko
self.initializeConnection()
self.initializeConnection()
d = GXDLMSData("1.0.72.7.0.255")
self.read(d, 2)
I tried read voltage from the 3phase Meter which is possible on gurux director but I got this error.
Access : Device reports a undefined object
Hi,
Hi,
The reason is usually that your data type is wrong or you must use other authentication levels.
If you read association view can you see this object? If you can't you need to use another authentication level. Otherwise check the object type is data.
BR,
Mikko
I can read association view
I can't read association view on this HEXING meter.
On gurux director, I added the objects manually. And I was able to get readings from it on the authentication HIGH level.
By the way, how do I check the data type.
When you look top left corner
When you look top left corner you can see object type in GXDLMSDirector. I believe that this is register object and not data.
BR,
Mikko
Yes, you're right. It's
Yes, you're right. It's Register Object not Data Object. What's the way forward.
My actual is to use Disconnect control which has work on the GuruXDirector. I understand that I can use this:
d = GXDLMSData("0.0.96.3.10.255")
#Read
self.read(d, 2)
#Write
self.write(d, 2)
Can you throw more light, On GuruXDirector, everything worked well on Authentication HIGH, but on the python script I still got
On writing, ACCESS ERROR: Device reports a hardware fault
On reading, ACCESS ERROR: Device reports a undefined object
Hi,
Hi,
Try with this:
d = GXDLMSDisconnectControl("0.0.96.3.10.255")
Object type must e correct or the meter is returning an error.
BR,
Mikko
At first, I got an error,:
At first, I got an error,:
name error: Global name 'GXDLMSDiconnectControl' is not defined.
Then I imported GXDLMSDiconnectControl from gurux_dlms.objects
I got TYPE ERROR: exceptions must be old-style classes or derived from Base Exception, not NoneType
Hi,
Hi,
You must first import objects that you want to use like this:
from gurux_dlms.objects.GXDLMSDisconnectControl import GXDLMSDisconnectControl
BR,
Mikko
from gurux_dlms.objects
from gurux_dlms.objects.GXDLMSDisconnectControl import GXDLMSDisconnectControl
d = GXDLMSDisconnectControl("0.0.96.3.10.255")
self.read(d, 2)
I still got the same error as above. TYPE ERROR
Hi,
Hi,
I tested this with one meter and it worked like expected. Can you try to run this with -t Verbose parameter?
Paster meter reply here. The reply is enough.
BR,
Mikko
Thank you, it reads TRUE as
Thank you, it reads TRUE as output
d = GXDLMSDisconnectControl("0.0.96.3.10.255")
val=self.read(d, 2)
Self.showValue(2,val)
However, what I expect from DLMSDisconnectControl is to disconnect and reconnect the latching relay in the meter. It actually works on the DLMS Director. What command do I need to use on python script.
Hi,
Hi,
read reads attribute #2 value from the meter. If you want to disconnect and re-connect the value you need to do it like this:
d = GXDLMSDisconnectControl("0.0.96.3.10.255")
#Disconnect
data = d.remoteDisconnect(self.client)
reply = GXReplyData()
self.readDataBlock(data, reply)
#Reconnect
reply.clear()
data = d.remoteReconnect(self.client)
self.readDataBlock(data, reply)
BR,
Mikko