Git Product home page Git Product logo

Comments (5)

kentindell avatar kentindell commented on August 11, 2024

The problem is that sequence numbers are not monotonic: they wrap around, and so comparisons can't be simple > or <.

If you don't really need the transport features and your application can just transmit its state periodically then you could just use the basic MIN layer, which would cut the overheads down a lot.

from min.

ramb0t avatar ramb0t commented on August 11, 2024

@mikemoretti3 did you ever come up with a solution to this? I'm also playing around with MIN and RS485, trying to work out how to deal with the half-duplex flow control aspect

from min.

mikemoretti3 avatar mikemoretti3 commented on August 11, 2024

no, i gave up on this protocol and developed my own. but this problem only occurred when talking to multiple boards from one main board. from your comment it doesn't sound like that's what you're doing?

from min.

kentindell avatar kentindell commented on August 11, 2024

I designed MIN for MCU-host communications rather than a multidrop bus because there wasn't anything simple to do the job. But if you want a multidrop bus protocol there are other options. Have you come across LIN?

from min.

ramb0t avatar ramb0t commented on August 11, 2024

no, i gave up on this protocol and developed my own. but this problem only occurred when talking to multiple boards from one main board. from your comment it doesn't sound like that's what you're doing?

Yeah I might end up doing my own protocol, I was actually just trying to not re-invent the wheel haha. I actually have a couple of devices on a single bus (that control servo motors) and a main controller. Really the system can be one direction half duplex controller -> slave, which will help with arbitration. I'll likely do something simple like $$"node id"*"len"#"payload ascii only"@"CRC"/n
The system is critical, so I need all the error checking capability, very low bandwidth however so even MIN is a bit over the top.

I designed MIN for MCU-host communications rather than a multidrop bus because there wasn't anything simple to do the job. But if you want a multidrop bus protocol there are other options. Have you come across LIN?

You are correct, MIN is awesome and I've actually used it for another project before in the past with great success, but not ideal for this application actually. LIN is actually a brilliant idea, never used it before but could fit the bill well. Also likely to be some good libraries out there to same me some time.

from min.

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.