Skip to main content
Home
for DLMS smart meters
Open source solutions for DLMS smart metering

Main navigation

  • Home
  • Products
  • About us
  • Open Source
  • Community
  • Forum
  • Downloads
User account menu
  • Log in

Breadcrumb

  1. Home
  2. Forums
  3. Access Error : Device Reports Read-Write Denied [Python_Raspberry PI]

Access Error : Device reports Read-Write denied [Python_Raspberry PI]

Forum Rules

Before commenting read Forum rules

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 Toni , 20 January, 2021
Forums
Gurux.DLMS

gurux_dlms version: 1.0.95
gurux_net version: 1.0.17
gurux_serial version: 1.0.15
Authentication: Authentication.HIGH
ClientAddress: 0x1
ServerAddress: 0x1
Standard: Standard.DLMS
TX: 02:54:30 /?!

RX: 02:54:35 /HXE5\2HXE12

Bitrate is : 9600
TX: 02:54:35 06 32 35 32 0D 0A
RX: 02:54:36 None
TX: 02:54:37 7E A0 07 03 03 93 8C 11 7E
RX: 02:54:38 7E A0 20 03 03 73 F0 2E 81 80 14 05 02 00 C8 06 02 00 C8 07 04 00 00 00 01 08 04 00 00 00 01 0B 87 7E
TX: 02:54:38 7E A0 4C 03 03 10 BD 71 E6 E6 00 60 3E A1 09 06 07 60 85 74 05 08 01 01 8A 02 07 80 8B 07 60 85 74 05 08 02 02 AC 12 80 10 1E 09 E7 5D C6 D5 AA 4A 77 1C 50 32 AB C4 9B 99 BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 00 1E 1D FF FF 0C 55 7E
RX: 02:54:38 7E A0 58 03 03 30 F2 E1 E6 E7 00 61 4A A1 09 06 07 60 85 74 05 08 01 01 A2 03 02 01 00 A3 05 A1 03 02 01 00 88 02 07 80 89 07 60 85 74 05 08 02 02 AA 12 80 10 39 41 45 41 32 34 31 36 37 36 33 44 41 41 44 30 BE 0F 04 0E 08 00 06 5F 1F 04 00 00 18 1F 01 00 00 07 4B DA 7E
TX: 02:54:38 7E A0 2B 03 03 32 68 BD E6 E6 00 C3 01 C1 00 0F 00 00 28 00 00 FF 01 01 09 10 5B E9 7C 6B 70 2F 9D 12 63 24 09 24 B4 87 3C 3E 54 CA 7E
RX: 02:54:38 7E A0 24 03 03 52 97 6C E6 E7 00 C7 01 41 00 01 00 09 10 FA 19 0C 16 03 F7 FC BD 7B 96 57 B7 3B 97 71 19 5A AC 7E
TX: 02:54:38 7E A0 19 03 03 54 DC CE E6 E6 00 C0 01 C1 00 0F 00 00 28 00 00 FF 02 00 91 53 7E
RX: 02:54:39 7E A0 11 03 03 74 06 0A E6 E7 00 C4 01 41 01 03 9F 8E 7E
DisconnectRequest
TX: 02:54:39 7E A0 07 03 03 53 80 D7 7E
RX: 02:54:39 7E A0 07 03 03 73 82 F6 7E
Access Error : Device reports Read-Write denied.
Ended. Press any key to continue.

Toni

5 years 4 months ago

hello Kurumi,

hello Kurumi,

Please, what could be the cause of this error. [Access Error : Device reports Read-Write denied.]

thank you

Profile picture for user Kurumi

Kurumi

5 years 4 months ago

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

Toni

5 years 4 months ago

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

Profile picture for user Kurumi

Kurumi

5 years 4 months ago

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

Toni

5 years 4 months ago

10:31:34 10:31:34.561 Info

The refresh Isn't working.

Profile picture for user Kurumi

Kurumi

5 years 4 months ago

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

Toni

5 years 4 months ago

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?

Profile picture for user Kurumi

Kurumi

5 years 4 months ago

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

Toni

5 years 4 months ago

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

Profile picture for user Kurumi

Kurumi

5 years 4 months ago

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

Toni

5 years 4 months ago

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.

Profile picture for user Kurumi

Kurumi

5 years 4 months ago

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

Toni

5 years 4 months ago

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

Profile picture for user Kurumi

Kurumi

5 years 4 months ago

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

Toni

5 years 4 months ago

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

Profile picture for user Kurumi

Kurumi

5 years 4 months ago

Hi,

Hi,

You must first import objects that you want to use like this:
from gurux_dlms.objects.GXDLMSDisconnectControl import GXDLMSDisconnectControl

BR,
Mikko

Toni

5 years 4 months ago

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

Profile picture for user Kurumi

Kurumi

5 years 4 months ago

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

Toni

5 years 3 months ago

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.

Profile picture for user Kurumi

Kurumi

5 years 3 months ago

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

  • Create new account
  • Reset your password

Hire Us!

Latest Releases

  • Tue, 06/09/2026 - 11:16
    gurux.dlms.java 4.0.95
  • Tue, 06/09/2026 - 10:03
    Gurux.DLMS.Python 1.0.199
  • Mon, 06/08/2026 - 13:39
    gurux.dlms.cpp 9.0.2606.0801
  • Mon, 06/01/2026 - 10:15
    gurux.dlms.cpp 9.0.2606.0101
  • Thu, 05/28/2026 - 16:06
    gurux.dlms.java 4.0.94

New forum topics

  • Error reading L&G Meter
  • Pass a TCP Client to GXNet
  • Australian EDMI Mk10D (Essential Energy area)
  • Strange mix of data notificiation vs get response
  • DLMS Connection
More

Who's new

  • Tuanhgg
  • Adel
  • charnon
  • Paddles
  • Miguel Ángel
RSS feed
Privacy FAQ GXDN Issues Contact
Follow Gurux on Twitter Follow Gurux on Linkedin