the problem here is where to draw the line. the thing is though, a perfect line can't be drawn. i can still read your code, and learn something from it. so there is some benefit.
the question is how do we measure benefit?
you could also imagine a project that could be of huge benefit, but nobody knows about it because just publishing it on my website or even on github is not enough.
so maybe benefit is the number of people downloading and using the code. few people would use your firmware, so the benefit would be small.
we are already facing this question with small libraries projects that many other projects depend on. which of these libraries deserve or need our support. if you can answer that question you can also decide if a project is of public benefit.
when it comes to officially recognizing projects, the cost of enforcement is also an issue. it may be unfair that a project like this firmware gets recognized as being of public benefit, but it is also unfair to not recognize other projects that do need the recognition don't get it.
it is not reasonable to reject an idea just because you can construct examples that are not deserving and would exploit a loophole. just like we don't cancel social security benefits just because there are a few bad sheep that are unfairly taking advantage of it.
i find it really frustrating that every good idea is shot down just because some people could benefit unfairly.
That's exactly my point! It's not as simple as "it is open source, therefore it is gemeinnützig". It depends on the project.
Therefore it doesn't make sense to recognise "open source" as "volunteering". What makes sense is to consider "volunteering projects" as "volunteering projects", and the way one decides that is by looking at the project. Open source or not.
But I assume that's already how it works: to qualify as "volunteering", someone in charge has to look at your activity and confirm that it does, indeed, qualify.