-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Needs mode for Master & Slave on single channel #2
Comments
I believe this should be mostly addressed in #3 - I had issues using the failing checksum, so I just added a flag indicating whether it was processing a request or a response. |
The same issue might have been reported here too: |
Is there a fix for this yet? I am working with modbus and have no way to see the response from a device. Every message is considered a Server or Client. You need both call and response to properly understand what is happening on the bus. Notice the "invalid checksum" in the attached image. The analysis on the Saleae's part is incorrect because the server is actually responding properly with a valid checksum. (CRC-16 assumed) [RTU]>Tx > 15:01:56:189 - 01 03 00 80 00 02 C5 E3 |
@sgal-powerbreezer it looks like #3 is still pending. I will bump that one. |
thank you🙏 |
Issue report from internal ticket # 91516. "It’s the modbus analyzer not being able to differentiate between when data is being requested/received which gives a Checksum error. So what happens in first instance is data is requested by Master which the Modbus Analyzer reads correctly. Second instance is then the slave sends back the data and Master receives it but Modbus Analyzer gives CheckSum error even with 2 Modbus Analyser (Client + Server) selected for one data line, because it isn’t able to differentiate between the 2 it reads it wrong. Other people have had same issue in the past and in that post there was one custom analyzer called (Modbus Client + Server) which would differentiate between the 2 and apply Client/Server settings depending on whether the data was being requested or received. Ill attach a screenshot to show you further: So, as you can see above Modbus in Red is Client and one in brown is Server. The first pack of data is read correctly suing Modbus Client as Master is requesting data. In second pack data is being received which should be read correctly using Modbus Server this time but because it follows the first pack incorrectly it reads the second pack incorrectly as well." "Furthermore, I will also attach the .sal file for further reference and to be used in the comment you post." |
Specifically, we should have a combined mode, called "Modbus/RTU - Master & Slave", which auto-detects the messages on a single data line as either Master or Slave. Modbus can have both Master & Slave messages on a single line.
The simplest solution is to try both decodings modes (master and slave) for each decoded frame (single blue decoded box) – the correct one for is the one with a valid Checksum.
The text was updated successfully, but these errors were encountered: