SpaceLogic KNX Forum
Schneider Electric SpaceLogic KNX forum to get support and share knowledge including selection, installation and troubleshooting for spaceLYnk, Wiser for KNX, eConfigure KNX, SpaceLogic KNX Hybrid module and other topics.
Link copied. Please paste this link to share this article on your social media post.
Dear Team,
We are facing issue VRF integration on Modbus. Some Time Command is working and some time is not working. Please support us. ref Script below. Continoused error is coming on the wiser CRC faild:opration time out. Please help Us its Big Project around 300 wiser is required.
Link copied. Please paste this link to share this article on your social media post.
I don’t think there is much we can do other than giving some tips where you need to search, there are no known issues and we don’t have a test device to reproduce as it’s not a SE device.
Have you tested the registers without template via the read test module?
There is either a wrong register called from the template so please verify that via the test or there is something with the physycal wires, addressing or missing termination.
Have you also tested with 1 single VRF ?
What are than the results?
BR,
Erwin
Link copied. Please paste this link to share this article on your social media post.
Dear Team,
We have tested On modscan all commands are working, when we are working with the Wiser some time 4-5 time commands is working. After that commands not working. We are not able understanding What happening. Error CRC Invalid,Opration Faild.
Link copied. Please paste this link to share this article on your social media post.
Testing on Modscan is not the same, the physical layer is different and also termination can be different, there also can be a -1 offset in registers as some suppliers are seeing register 0x0000 as register address 0 and others as 1 so there can be a shift of 1 in the registers, so you need to test it from the test module the Wiser itself to have a valid testing approach.
On the modbus tab there is a button in the bottom "read test", please use that to perform your test and start with a singe unit connected and test all registers you want to use in the profile before using the profile.
There can also be an issue with the wiring causing CRC errors, this can only be noticed by using a scope to validate the level of the electrical signals. Did you connected the GND?
You can also do some deeper debugging via script, you need to disable RTU on the Modbus templates before using it and change the communication details and registers to read:
require('luamodbus')
mb = luamodbus.rtu()
mb:open('/dev/RS485', 9600, 'N', 8, 1, 'H')
mb:connect()
buffer = {}
mb:setdebug(function(msg)
buffer[ #buffer + 1 ] = msg end)
mb:setslave(1)
res, err = mb:readregisters(0)
log(res, err)
mb:close()
log(table.concat(buffer)
)
Link copied. Please paste this link to share this article on your social media post.
Hello crestokart!
Can you please share a screenshot of the errormessage?
Also, can you please share the Modbus-RTU-Settings?
Link copied. Please paste this link to share this article on your social media post.
Dear Thomas,
When we mapping with the single address it will work properly, once mapping with another address will not. orks
Single Address
Multiple Address Mapping.
Link copied. Please paste this link to share this article on your social media post.
You could try to use block read as this is way more efficient than reading the registers 1 by one and could be your device require this..
However this requires one of the latest FW, it works in 3.0 but not sure 2.8.3 does support it, you need to try that.
In this example you start your block from register 0, and at once will read 20 registers, Read offset is 1,2,and 3 so you will get value from register 1, 2 and 3 inside the block that started from 0 with a total lenght of 20.
At once you can read 125 registers as long they are in a row.
Due to block read the whole block is read if at least one register from it is mapped, not mapped are not processes.
In a block not mapped objects are not processed but the whole block is read at once..
Sample:
"mapping": [{
"name": "Command (EVG1)",
"bus_datatype": "uint16",
"units": "",
"type": "register",
"address": 0,
"read_offset": 1,
"read_count": 20,
"datatype": "int16",
"writable": true
},
{
"name": "Luminaire supply (EVG1)",
"bus_datatype": 1005,
"units": "",
"type": "register",
"address": 0,
"read_offset": 2,
"read_count": 20,
"datatype": "int16",
"writable": false,
"value_bitmask": "0x1"
},
{
"name": "Faulty luminaire (EVG1)",
"bus_datatype": 1005,
"units": "",
"type": "register",
"address": 0,
"read_offset": 3,
"read_count": 20,
"datatype": "int16",
"writable": false,
"value_bitmask": "0x2"
}
]
Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.