Giter Site home page Giter Site logo

Timing about nanomodbus HOT 6 OPEN

AliMoal avatar AliMoal commented on August 12, 2024
Timing

from nanomodbus.

Comments (6)

debevv avatar debevv commented on August 12, 2024

Hi, basically it doesn't. It behaves similarly to libmodbus (stephane/libmodbus@a11805c and stephane/libmodbus#18). We addressed this some time ago with another user in this issue.
I thought about implementing it at the time, but it would make the library more complex both internally and for the user. Also in my experience I never found a device honoring those timings, so having the library not rely on them makes it definitely more robust.
Would you mind explaining me your use case?

from nanomodbus.

AliMoal avatar AliMoal commented on August 12, 2024

Actually, I want to use this library to communicate with PLC devices, I don't have any idea this lack of timing may cause problem or not.

from nanomodbus.

AliMoal avatar AliMoal commented on August 12, 2024

As I see in here, libmodbus library handles those timings.

from nanomodbus.

debevv avatar debevv commented on August 12, 2024

Sorry, can you point me to the exact line? Because I can't find it in the linked file.
By the way, if those PLC devices do follow the spec about the timings, there are two cases:

  • when you receive data from them, there shouldn't be any problems because nanomodbus ignores the the intervals between characters and frames
  • when you send data, I think you can get away with waiting before making a request (if you are a client), waiting before responding in a request handler (if you are a server) and spacing the characters in your write() platform function

from nanomodbus.

AliMoal avatar AliMoal commented on August 12, 2024

I guess line 1277.
Could you show me how to implement Write() function? I'll use this library and see there is any problem or not.

from nanomodbus.

debevv avatar debevv commented on August 12, 2024

Yeah after reading my previous message again I realized that the t1,5 in the spec is not mandatory inter-character spacing but instead a timeout, so you really don't need any particular handling in your write() function.
The only things you should implement are the waits before requests and responses, to simulate inter-frame spacing

from nanomodbus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.