[Discussioni] le specifiche di zigbee
Francesco Potortì
pot a potorti.it
Ven 28 Gen 2011 23:48:32 CET
leonardo:
> - la specifica ti permette di sviluppare prodotti non commerciali ma
>non vieta esplicitamente di licenziarli in un modo o in un altro, nè
>vieta di usare per qualsiasi fine prodotti (che non hai sviluppato te)
>basati sulle specifiche.
Più precisamente le restrizioni sono sulla specifica, il software non
c'entra. Le restrizioni sono limitate agli sviluppatori che creano
software comemrciale.
> - le specifiche le devi leggere per sviluppare software, non perforza
>per usarlo, ed il software che te sviluppi in base alle specifiche lo
>usi per scopi non commerciali ma lo rilasci con licenza BSD.
Sì, l'idea è questa.
> - a quel punto, qualcuno prende il codice BSD e lo rilicenzia GPL
Nonn credo che si possa, perché chi se lo trova in mano non può
modificarlo a scopi commerciali e la licenza quindi decade. A me
interessano in particolare commenti sui casi A e B, mentre C è un caso
di scuola e D è probabilmente impossibile. Riscrivo sotto tutto quanto
per riferimento.
>La licenza zigbee dice: "No part of this specification may be used in
>development of a product for sale without becoming a member of ZigBee
>Alliance." Dice "For Sale", in vendita, non "che vendi tu". Se te lo
>sviluppi e qualcun altro lo vende, sei sempre te che lo hai sviluppato
>senza essere membro ZB.
Questo è un punto critico, infatti, e su questo mi servono opinioni.
>D'altra parte però se ti iscrivi a ZB, ammesso che non ci siano altri
>vincoli, puoi sviluppare qualcosa che qualcun'altro venderà, visto che
>il vincolo è solo sullo sviluppatore e quindi lo puoi licenziare come ti
>pare. Gli sviluppi successivi a meno che non abbiano bisogno delle
>specifiche, sono garantiti dalla licenza che scegli tu.
È quel che penso anch'io, purché la licenza non sia GPL, ma anche qui mi
servono opinioni.
================
Le specifiche dello stack protocollare di comunicazione e applicativo di
Zigbee hanno una licenza d'uso e distribuzione che per certi versi è un
po' mal scritta, a mio parere. Questo messaggio ne tenta un'analisi e
chiede opinioni su questa analisi.
Sia la "Zigbee specification" che la "Zigbee cluster library
specification" iniziano con queste frasi, riportate in maniera identica
in entrambe le specifiche:
Capo 1 -
The ZigBee Specification is available to individuals, companies and
institutions free of charge for all non-commercial purposes
(including university research, technical evaluation, and development
of non-commercial software, tools, or documentation). No part of this
specification may be used in development of a product for sale
without becoming a member of ZigBee Alliance.
La parte mal scritta è a mio parere la prima frase, che si riferisce
alla "ZigBee Specification" sia nel documento che ha quel titolo sia
nell'altro, che ha un titolo diverso. Il sospetto di errore è in me
generato dall'accostamento con la seconda frase, che invece si riferisce
chiaramente a "this specification".
Per avere una base di discussione, nel seguito ammetto che anche la
prima frase si riferisca in entrambi i documenti a "this specification",
o assumendo un errore di scrittura o assumendo che "ZigBee
Specification" si possa intendere come riferito collettivamente ad
entrambi i documenti. L'incipit di entrambi i documenti continua così:
Capo 2-
Copyright © ZigBee Alliance, Inc. (2007). All Rights Reserved. The
information within this document is the property of the ZigBee
Alliance and its use and disclosure are restricted.
Anche qui trovo ambiguità, perché dice che l'uso è "restricted" ma non
si capisce come. Ovviamente il senso più esteso è da escludere,
altrimenti non potrei neanche leggerle né usarle per scrivere del
software. L'unica cosa che mi pare sensata è di ignorare "its use" e
supporre che voglia semplicemente dire che si applicano tutte le
restrizioni relative alla legislazione sul copyright.
Capo 3-
Elements of ZigBee Alliance specifications may be subject to third
party intellectual property rights, including without limitation,
patent, copyright or trademark rights (such a third party may or may
not be a member of ZigBee). ZigBee is not responsible and shall not
be held responsible in any manner for identifying or failing to
identify any or all such third party intellectual property rights.
Questa invece mi sembra semplicemente una nota cautelativa, di quelle
la cui presenza cambia poco, per cui semplicemente la ignoro.
Riassumendo: posso scaricarmi queste specifiche, non posso darle in
giro, posso studiarle e usarle nell'implementazione di software che le
usi. Posso utilizzare questo software per usi di studio, ricerca, o
altri utilizzi non commerciali. Se le uso per sviluppare software da
vendere o incorporato in dispositivi da vendere devo iscrivermi alla
Zigbee Alliance (3500$/anno più un'una tantum all'iscrizione, per quanto
capisco).
Il Capo 1 scritto sopra è scritto anche in una cornice che bisogna
leggere e approvare prima di scaricare la specifica, che viene fornita
tramite un link unico privato inviato all'indirizzo email fornito.
Interpretazioni di casi esemplificativi secondo me fattibili (difficoltà
pratiche a parte), su cui chiedo un'opinione. I casi A e B sono molto
vicini a reali casi pratici di cui mi sto interessando.
Caso A
Scrivo software conforme alle specifiche per studio o ricerca, lo
distribuisco gratuitamente e liberamente con licenza Apache. Chi lo
prende e lo usa per fini commerciali è probabile che debba apportare
qualche modifica per la quale ha bisogno delle specifiche Zigbee. È
bene che in questo caso si iscriva alla ZA (ZigBee Alliance).
Caso B
Scrivo software come sopra, ma stavolta lo scrivo creando uno strato di
astrazione tale che chi lo usa non ha bisogno delle specifiche se non
in casi molto particolare, nei quali bisogna cotruire delle istruzioni
conformi alla specifica, dati che per la mia astrazione sono opachi.
La maggior parte degli sviluppatori per usi commerciali invece hanno
solo bisogno del mio manuale e non costruiscono dati opachi. Costoro
non hanno bisogno di iscriversi alla ZA.
Caso C
Scrivo un modulo per Frebsd che implementa le specifiche, senza scopi
commerciali, distributo con BSD e che mostri un'interfaccia astratta
tale che la lettura delle specifiche Zigbee sia totalmente inutile, e
che non consenta nessun passaggio diretto di dati opachi alla rete
Zigbee. Gli sviluppatori del kernel prendono questo codice e lo
incorporano legittimamente nel kernel, così com'è. Nessuno
sviluppatore del kernel ne potrà effettuare in seguito alcuna modifica
che richieda la conoscenza delle specifiche Zigbee.
Caso D
Tutto come il caso C, ma per Linux. In aggiunta, gli sviluppatorei del
kernel all'atto dell'incorporazione cambiano la licenza.
More information about the discussioni
mailing list