question

dewitpj avatar image
dewitpj asked

Updating SoC from ZCell over Modbus TCP (I know it's deprecated but... :) )

Hi,


I am trying to update the SoC via Modbus TCP. It's enabled on the CCGX (running 2.22). The CCGX has a Quadro connected and it's reporting the following error:

ERROR 2018-12-18T00:59:15.773 "Error processing function code 16, unit id 246, src 10.12.1.72, start address 30, quantity 1, byte count 2 :" "Requested device (service) does not exists"


I followed the instructions from:


https://faq.zcell.com/content/10/55/en-us/enabling-state_of_charge-update-using-modbus_tcp-with-a-ccgx.html

I know it's deprecated but this is my only option for now. I have checked the registers and it appears that I have the right unit/registers ?


Thanks,


Pieter


SOCModbus TCPRedFlow ZCell Flow Battery
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

4 Answers
Guy Stewart (Victron Community Manager) avatar image
Guy Stewart (Victron Community Manager) answered ·

Simon Hackett asked me to pass along the following :

The technique still works in principle but it doesn’t benefit from the charge rate dynamic controls of DVCC and it’s harder to configure correctly.


I don’t think the issue is on the BMS side - based on that diagnostic log like the BMS is sending the write command and the CCGX is not accepting it.


Ie That error quoted is coming from the CCGX side and indicates that the MODBUS register concerned is missing from the CCGX system.


That in turn suggests a misconfigure or that Victron has rejected the writable MODBUS TCP register for some reason.


Maybe check the (documented) step to enable MODBUS-TCP on the CCGX settings menu?


Please confirm you have followed the steps on the zcell.com page to turn on MODBUS-TCP support in the CCGX and rebooted the CCGX and then try again?

Regards,

Simon

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

dewitpj avatar image
dewitpj answered ·

Turns out this was the answer :) thanks !

Obtain your dev instance from the CCGX and use that to lookup the Unit ID as @WKirby said :)

2 comments
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

mvader (Victron Energy) avatar image mvader (Victron Energy) ♦♦ commented ·

Great! And how was the id different from the one you’d first think it needed to be?

0 Likes 0 ·
dewitpj avatar image dewitpj mvader (Victron Energy) ♦♦ commented ·

The doc is based on the CCGX and we have a Venus GX (something I only noticed now while writing this :( ) so this basically puts this squarely on my fault :)

0 Likes 0 ·
dewitpj avatar image
dewitpj answered ·

Thanks for the reply - yes, that log was from the CCGX:


==> dbus-modbustcp/current <==

@400000005c186ba51c6e7334 ERROR 2018-12-18T03:38:03.476 "Error processing function code 16, unit id 246, src 10.12.1.72, start address 30, quantity 1, byte count 2 :" "Requested device (service) does not exists"

@400000005c186bb11bd54844 ERROR 2018-12-18T03:38:15.466 "Error processing function code 16, unit id 246, src 10.12.1.72, start address 30, quantity 1, byte count 2 :" "Requested device (service) does not exists"


I have re-configured the setup and I still get the same result. I even down graded the firmware to 2.06, same result.


Is there somewhere that I can see why the write is rejected ?


2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

mvader (Victron Energy) avatar image
mvader (Victron Energy) answered ·

Hi; the place to start studying is here:

https://www.victronenergy.com/live/ccgx:modbustcp_faq

The error says that the device doesnt exist: I think your unit id is wrong.



3 comments
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

dewitpj avatar image dewitpj commented ·

I have a document titled "CCGX-Modbus-TCP-register-list" that I downloaded from your website that says the unit is right ?



Is that not the right one ?

0 Likes 0 ·
dewitpj avatar image dewitpj commented ·

Unless it's 0x246 and not 246 ?

0 Likes 0 ·
wkirby avatar image wkirby ♦♦ dewitpj commented ·

It's decimal, not hex.

That unit ID is for VE.Bus devices like MultiPlus etc. There are many unit IDs for different parts of the system.

What is your deviceinstance of the device that you are trying to address? The cross reference that to the Unit ID in the TCP register list spreadsheet.

1 Like 1 ·

Related Resources

Additional resources still need to be added for this topic

Modbus TCP Basics