9 comments

  • jjmarr 10 minutes ago
    Open the C++ example up and the first thing I see:

    ```cpp std::cout << "Received ReportCoordinateFrameSettings" << std::endl; ```

    Generally, I've heard `std::endl` instead of \n has bad performance because it forces the statement to print immediately. And because cout is guaranteed to flush anyways when the program ends, you're adding a delay for no reason.

    I wonder if there's something I'm not seeing that led to them adopting this rule. e.g. "abnormal program termination" caused by the weapon blowing itself up circumventing a buffer flush?

  • alhirzel 59 minutes ago
    Reminds me a lot of the Tactical Microgrid Standard (aka TMS aka MIL-STD-3071) [1], probably just because TMS uses DDS as well. I would really like to know if there is a protocol that functions like DDS but caters to real-time guarantees and prioritizes (at a "simple protocol" level) usability on embedded systems with no dynamic memory allocation. It would also need to be just-as-functional with non-real-time systems. One problem with DDS is that it is too heavy-handed to implement well on an embedded system.

    [1] https://battery.army.mil/system-integrator-hub/tms/

    • p_l 8 minutes ago
      Pretty sure there are DDS implementations that provide most of that, maybe with memory pools instead of no-allocations.

      Other than that, PX4 uses an in-memory only pub/sub for internal data bus, somewhat inspired by DDS

  • throw1234567891 38 minutes ago
    Nah, they haven't open sourced anything: https://github.com/rheinmetall. They just published the documentation. Really weird, what's the point?
    • pixelesque 24 minutes ago
      They've got the IDL files as well for the APIs, but you can't use them without their libs:

      > The data model is defined using a custom format .rmodel based on the ddkit > framework (rmodel-api).

      > Please note that the .rmodel data model is for documentation purposes only and > does not reflect the actual interface used on the communication layer. Network > communication is only possible through the provided libraries.

  • j-pb 2 hours ago
    First I was excited, then I saw that it's based on DDS.
    • budman1 1 hour ago
      why the hate on DDS?

      seems like a perfect fit.

      • j-pb 1 hour ago
        DDS is the least bad of the stuff that has come out of OMG, but it's not a nice middleware still. There is no underlying algebra of that composes nicely when compared to Zenoh for example, and the "vendor independence" and compatibility is usually a joke. There's a reason ROS is moving away from it again.
        • bahmboo 20 minutes ago
          There's a standard that has OMG as the acronym? OMG. I'm not even going to bother to search for that!
          • jjmarr 6 minutes ago
            Object Management Group I think. Better known as the inventors of UML.
  • karmicthreat 48 minutes ago
    This looks like ROS2 for missiles.
  • exabrial 1 hour ago
    I cannot find boomstick anywhere in here
  • 9dev 1 hour ago
    Am I just too ignorant of Miltech, or is this that in large parts recreating Standard messaging primitives that other protocols and systems have been providing for decades already (so invented elsewhere?)
    • pixelesque 57 minutes ago
      DDS sort of took over from CORBA in the military domain, and the statically-typed IDL was still quite similar to CORBA last time I looked at it, so that takes you back to around 1998 when CORBA was being used a lot in the military in my experience.

      What other protocols and systems were you thinking of that can provide (depending on broker) hard-realtime delivery that can be used in safety-critical systems?

    • esseph 1 hour ago
      Every mil company designs unique bespoke things often with some exceptions, and even the "open systems" mostly aren't open by any stretch of the definition.

      Obscurity is part of the allure, not a repulsive factor.

      You don't want a hostile nation suddenly and easily understanding your systems.

      • smalltorch 1 hour ago
        On the other hand, its good to design systems where it wouldn't even matter if the hostile nation state knows exactly how it works.

        This is a principle in cryptography, but carries nicely to other things.

        • timcobb 21 minutes ago
          I feel like this is always the best design whenever possible.
      • 0cf8612b2e1e 13 minutes ago
        I have to assume that so many people require access to the specs that an interested party can surely acquire them.

        World of Tanks has repeatedly had military personnel updating the technical specifications with details they have found in the secret manuals.

      • touisteur 33 minutes ago
        Asterix is an actual standard for radar data, coming from civilian radar systems. I wish it was updated somehow for 3d beam-steered (and moving) sensors, but still it covers most of the industry's needs... I keep hearing so many grumblings of replacing it (it is binary, unforgiving, quirky, very 80s...) and of course fragmentation is back in.
      • graemep 52 minutes ago
        Hat sounds like a particularly weak form of security by obscurity
      • mc32 59 minutes ago
        Also you do not want them to benefit from your smart design choices. You want them to suffer from their bad choices and not learn from your success. (Yes, of course you could have bad design choices that you don’t realize someone else has solved more intelligently.)
        • ufocia 57 minutes ago
          Bad design choice is probably why they open sourced it.
  • mrhcon 1 hour ago
    [flagged]
  • nicechianti 31 minutes ago
    [dead]