Top
Best
New

Posted by summarity 12 hours ago

German Rheinmetall open-sources its Battlesuite connected weapon system protcol(rheinmetall.github.io)
212 points | 72 commentspage 2
matnosner 3 hours ago|
They could Just have used ROS...
jjmarr 10 hours 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?

aftbit 9 hours ago||
This seems like an incredibly unimportant quibble... I would imagine they just used std::endl b/c that's what most random tutorials used in the 2000s and that's how the engineer learned. If you are printing a debug string, you probably don't care that much about perf in the first place.
MiroslavPokorny 12 minutes ago|||
Ask yourself, would a newbie make that mistake ?
jjmarr 5 hours ago|||
I was wondering if it's a hard real-time constraint or something to ensure consistent timing.
gavinray 8 hours ago|||
The modern C++ idiom is std::println() anyways...

https://en.cppreference.com/cpp/io/println

__d 9 hours ago|||
For a long time, std::endl demonstrated that you were a proper C++ programmer, not some neckbeard C apologist. It wasn’t until C++ had „won“ that it became acceptable to use \n again.
rsynnott 1 hour ago|||
> And because cout is guaranteed to flush anyways when the program ends, you're adding a delay for no reason.

I mean... If your command line utility doesn't print anything til it's done, that is going to be, _at best_, an annoying user experience.

niemandhier 2 hours ago||
Cool I did not know that.

Your comment is a bit salty, but I learned something from it, so I don’t think you deserve the downvotes

9dev 11 hours 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 10 hours 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?

ls612 9 hours ago||
Stupid question, but why didn’t the DOD mandate IP compatibility for literally all comms like 20+ years ago? Is it pure corruption/incompetence or is there a good reason?
openasocket 8 hours ago|||
A lot of military comms are point-to-point or broadcast between radios where TCP/IP doesn’t really make sense. On top of that, you need to understand how much legacy military networking stuff is out there. This stuff long predates the internet. We had tactical data links and target tracking where a ground station could receive a target info from a remote radar array, and automatically direct fighters on autopilot on an intercept course with enemy contacts in like 1960 (see SAGE as an example). These systems have been around for decades and been continually improved on. There’s a lot of inertia to maintain compatibility. Because you really don’t want someone to die because your ally tried to warn you but their tactical data link isn’t compatible with yours.
ls612 6 hours ago||
I never said anything about mandating TCP too.
ahepp 4 hours ago||
TCP/IP refers to the whole protocol stack, including UDP. That is a bit counterintuitive, but well established: https://en.wikipedia.org/wiki/Internet_protocol_suite
aidenn0 8 hours ago||||
The DOD effectively can't "just mandate" things and it's because of politics (which is a superset of corruption and incompetence).

There's a very small number of major contractors and if you pick one of their APIs as the new standard, then you disadvantage all the others.

If you pick a greenfield project, then it will take a long time, and once you are done everybody will claim that they can't use it (see e.g. Ada; quick version they started working on a mandate for a programming language in 1975, mandated Ada in 1991 and by 1996 removed the Ada mandate).

ahepp 3 hours ago|||
actual or perceived realtime / determinism requirements
esseph 11 hours 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 11 hours 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 10 hours ago||
I feel like this is always the best design whenever possible.
touisteur 10 hours 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.
0cf8612b2e1e 10 hours 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.

yxhuvud 8 hours ago|||
Are you not thinking about the wrong tank game? World of tanks has ancient tanks, not modern (game tank span basically end with the main battle tank making the game tank role division being made irrelevant).
0cf8612b2e1e 8 hours ago||
Err yes. War Thunder.

https://news.ycombinator.com/item?id=31605345

esseph 8 hours ago|||
> I have to assume that so many people require access to the specs that an interested party can surely acquire them.

Those documents are often secret or top secret, or even more compartmentalized.

There are training docs in wide use today that are not publicly findable on the internet, nor are they seemingly in the datasets of LLMs.

I'm sure there are reasons for that, of course.

What you're talking about would have an even higher level of obscurity and secrecy, and probably Compartmented Information access.

graemep 10 hours ago||||
Hat sounds like a particularly weak form of security by obscurity
esseph 8 hours ago||
Layers of an onion and all that.

Often connectors are even proprietary.

(This is partially to protect systems not from the enemy, but from the troops themselves...)

mc32 10 hours 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 10 hours ago||
Bad design choice is probably why they open sourced it.
jauntywundrkind 6 hours ago||
Corba never died!!! OMG!!
karmicthreat 10 hours ago||
This looks like ROS2 for missiles.
huem0n 4 hours ago|
This is so ROS2 that ROS2 can't even tell that its not ROS2
lowbloodsugar 9 hours ago||
“Fire your goddamned missiles!.json”

“Think russian^H^H^H xml”

exabrial 11 hours ago||
I cannot find boomstick anywhere in here
z3ratul163071 3 hours ago||
of course the germans would use a fucking open management group academic mastrubation, bureucratic shitshow like dds.
mrhcon 11 hours ago||
[flagged]
nicechianti 10 hours ago|
[dead]