Forum: Mikrocontroller und Digitale Elektronik RIOT RTOS Lizenz für kommerzielle Anwendung


von Entwickler (Gast)


Lesenswert?

Hallo,

ich habe mir am Wochenende mal RIOT angeschaut.
Auf einem nucleo32-l432kc Board hatte ich auf Anhieb viele Beispiele
zum Laufen bekommen. Bin wirklich sehr zufrieden. Nun möchte ich nicht
nur privat damit spielen ;-) sondern auch für Projekte auf der Arbeit
einsetzen. Leider ist die Lizenz nicht MIT (freeRTOS) oder BSD(contiki) 
oder Apache (Zephyr).

Auf der Webseite steht dazu

https://riot-os.org/


"""
In short, LGPLv2 allows you to redistribute, use and/or modify the free 
open source code developed and maintained by the RIOT community, without 
requiring you to necessarily open your code. Other software released 
under LGPLv2 include for example VLC, GNU C Library, or Git, as well as 
software for industrial products, such as Panasonic LCD HDTV software. 
Do you need more arguments? Please read our FAQ. """

Ich kenne LGPL eher aus Linuxumfeld und zwar immer im Kontext, wenn LGPL 
Code hinzugelinkt wird. Im Kontext der uC Firmware, bei dem die ELF/HEX
den kompletten Code umfasst, kann ich das "hinzulinken" nicht wirklich
schlüssig belegen. Der Code wird ja immer voll mitgegeben.

Den Applicationscode will nicht öffentlich freigeben.
Die Anpassungen und Erweiterungen an Modulen würde ich freigeben, soweit
das möglich ist.

Verwendet das einer von euch in kommerziellen Projekten?

Grüße

von Urlauber (Gast)


Lesenswert?

Das kannst du in Embeddedprogrammen vergessen, da du dann gegen die 
Lizenz verstößt. Du kannst das nur machen wenn die lib als shared 
library verlinkt wird, das unterstützen die Plattformen aber nicht. Weiß 
der Henker was die Ersteller der Library geritten hat, diese License für 
ein solches Projekt zu verwenden.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Entwickler schrieb:
> Im Kontext der uC Firmware, bei dem die ELF/HEX
> den kompletten Code umfasst, kann ich das "hinzulinken" nicht wirklich
> schlüssig belegen. Der Code wird ja immer voll mitgegeben.
Das versteh' ich nicht.

Nu bin ich kein Anwalt, aber ich wuerde mal zu der Ansicht tendieren, 
dass wenn ich ein propietaeres hello_world.c schreibe, das gegen die 
glibc gelinkt (auch statisch) wird, ich die sourcen von hello_world.c 
nicht meinen Kunden weitergeben muss. Hoechstens die sourcen der glibc.
Aehnlich wuerde ich das dann mit einem rtos sehen.

Gruss
WK

von Harry L. (mysth)


Lesenswert?

Dergute W. schrieb:
> ich die sourcen von hello_world.c
> nicht meinen Kunden weitergeben muss. Hoechstens die sourcen der glibc.
> Aehnlich wuerde ich das dann mit einem rtos sehen.

Genau so siehts aus!

von seere (Gast)


Lesenswert?

Wenn du statisch linkst ist deine Ansicht IMO teilweise falsch. Du 
müsstest in dem Fall wohl mindestens Objectcode deiner Anwendung 
liefern, die ein (wieder statisches) Relinken mit dem LGPL Teil erlaubt.

von Christopher J. (christopher_j23)


Lesenswert?

Entwickler schrieb:
> Den Applicationscode will nicht öffentlich freigeben.

Das musst du auch nicht unbedingt. Allerdings musst du die Object-Files 
liefern, so dass jemand (rein theoretisch) im Stande wäre, an dem Code 
unter LGPL Veränderungen vorzunehmen und hinterher wieder ein 
funktionierendes Binary zu erhalten.

> Die Anpassungen und Erweiterungen an Modulen würde ich freigeben, soweit
> das möglich ist.

Anpassungen und Erweiterungen an LGPL-Code musst du gezwungenermaßen 
freigeben, egal was dein Chef davon hält.

Urlauber schrieb:
> Weiß
> der Henker was die Ersteller der Library geritten hat, diese License für
> ein solches Projekt zu verwenden.

Verstehe ich auch nicht. (L)GPLv2 mit (static) linking exception wäre ja 
noch ok aber LGPL halte ich für sehr problematisch.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

seere schrieb:
> Wenn du statisch linkst ist deine Ansicht IMO teilweise falsch. Du
> müsstest in dem Fall wohl mindestens Objectcode deiner Anwendung
> liefern, die ein (wieder statisches) Relinken mit dem LGPL Teil erlaubt.

Tatsaechlich, stimmt. Naja, muss man sich halt ueberlegen, ob man's 
schafft seinen proprietaeren Teil so in ein .o file zu bringen, dass in 
den Symboltabellen dann nicht mehr die eigenen Funktionsnamen oder 
anderes "hochgeheimes" Zeugs auftaucht...
Schon eher umstaendlich.

Gruss
WK

von Christopher J. (christopher_j23)


Lesenswert?

Dergute W. schrieb:
> atsaechlich, stimmt. Naja, muss man sich halt ueberlegen, ob man's
> schafft seinen proprietaeren Teil so in ein .o file zu bringen, dass in
> den Symboltabellen dann nicht mehr die eigenen Funktionsnamen oder
> anderes "hochgeheimes" Zeugs auftaucht...
> Schon eher umstaendlich.

Das impliziert aber auch, dass deine Firmware als freier Download 
verfügbar ist bzw. sich jeder ein Binary linken kann. Ein Ausleseschutz 
eines Controllers wird dadurch natürlich völlig ad absurdum geführt. Das 
will bestimmt nicht jeder.

von sid (Gast)


Lesenswert?

Entwickler schrieb:
> Auf der Webseite steht dazu
Hm direkt unter dem von Dir zitierten Abschnitt steht aber auch:

"Through this license, RIOT use is suitable for virtually all scenarios. 
But if you think your use case is not covered, contact us and we will 
work something out."

Im Zweifel ist also deren Kontaktformular Dein Freund ;)

von sid (Gast)


Lesenswert?

Aber deren wiki scheint mir auch ein Quell der Zuversicht..
https://github.com/RIOT-OS/RIOT/wiki/LGPL-compliancy-guide

klingt machbar für mich

von seere (Gast)


Lesenswert?

Christopher J. schrieb:
> Das impliziert aber auch, dass deine Firmware als freier Download
> verfügbar ist bzw. sich jeder ein Binary linken kann. Ein Ausleseschutz
> eines Controllers wird dadurch natürlich völlig ad absurdum geführt. Das
> will bestimmt nicht jeder.

Nein, nicht jeder muss in der Lage sein zu relinken. Nur die, denen du 
die Firmware übergibst. Nur denen mußt du das Relinken erlauben. Im 
Zweifel alles auf Datenträger dem fertigen Produkt beipacken, fertig. 
Oder den Versand eines solchen (gegen Unkosten) anbieten, auch das ist 
erlaubt.

von Christopher J. (christopher_j23)


Lesenswert?

seere schrieb:
> Nein, nicht jeder muss in der Lage sein zu relinken. Nur die, denen du
> die Firmware übergibst. Nur denen mußt du das Relinken erlauben. Im
> Zweifel alles auf Datenträger dem fertigen Produkt beipacken, fertig.
> Oder den Versand eines solchen (gegen Unkosten) anbieten, auch das ist
> erlaubt.

Ok, stimmt. Es bleibt jedoch ein fader Beigeschmack, dass die Firmware 
prinzipiell (unter Umständen unerlaubt) weiter vetbreitet werden kann.

von Entwickler (Gast)


Lesenswert?

Danke für die vielen hilfreichen Beiträge

https://github.com/RIOT-OS/RIOT/wiki/LGPL-compliancy-guide
diese Info sollte eigentlich direkt auf die Hautpseite :)

wenn im Gerät (Messequipment) nun 1+ Baugruppen verbaut sind,
die mit dem RTOS bespielt sind, muss der Käufer in irgendeiner Art
darüber informiert werden? User Manual?

Was würde dem Kunden das nützen, wenn er keine Schaltpläne und
Verdrahtungspläne hat. Im Normalfall interessieren sich die Kunden
nur dafür, dass das System störungsfrei läuft.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Verbietet es die LGPL denn einem seinen Objectcode unter ein NDA zu 
stellen?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.