| Action Talks/Bullshit Walks - FreakZ Licensing Changing to Mod-BSD | | Print | |
| Written by Akiba | |
| Saturday, 20 June 2009 | |
|
Yeah, you heard right. The next release of FreakZ and FreakUSB will have its licensed changed to Modified BSD with the additional restriction on the FreakZ stack that its subject to the Terms of Use of the Zigbee specification. With the whole licensing headache going on in regards to the Zigbee specs TOU, I decided that it just doesn't make sense to try and maintain a GPL license. For those that aren't up-to-date on their open source licenses, the Modified BSD license is one of the most permissive licenses available and does not require a user to disclose their IP or contribute their modifications to the project. In other words, it's very commercial-friendly. It took quite a bit of soul-searching to make the decision to let go of my software. Someone asked me if it's okay with me that a company can make a billion dollars off of my work without contributing anything in return. Of course the answer is that it'd be frustrating. However, my conclusion is that the goals of this project aren't about me or my work being treated fairly. It's to provide a free open-source software stack so that individuals that don't have access to the same resources as large companies can come up with innovative products. Somewhere in that innovation, I'm hoping that devices can be created to help good causes such as environmental and humanitarian issues. There's also a sub-goal which is to provide a check on the balance of power between implementors and hardware vendors. Most vendors use their software stack licenses to lock-in their customers and decrease the freedom of choice in choosing the best hardware for the required application. Having an open source, hardware agnostic stack can remove those limitations and allow people the choice to mix and match MCUs and radios. I know that some people will be disappointed to hear that I'm changing the license from GPL and I can only apologize. I was originally contemplating using a modified-GPL where it would be subject to Zigbee's Terms of Use. However even after adding this exception, there will still be issues with things like the Certicom patent and licensing for people that want to use the Smart Energy Profile. To accomodate that would be an added exception, and eventually, I can only imagine that the GPL on FreakZ would end up having so many holes that it'd look like swiss cheese (no offsense to any Swiss people). Arguably, the Smart Energy Profile is one of the best things going for Zigbee, and I imagine that it'd be important for an open source Zigbee project to be able to support it. When I first started this project, I didn't expect to get any commercial interest. I figured that only hardware hackers and tinkerers would be interested in an open source Zigbee stack. At the time, Zigbee was also waning in popularity, since it was before the Smart Energy industry started taking off. However the situation seems different these days, with Zigbee gaining in popularity due to Obama and his smart grid upgrade, the growing popularity of Zigbee Home Automation, and the recent Continua selection (hmmm...it's debatable whether its a win or not for Zigbee, but at least its something). I suspect that if, due to the Zigbee spec's terms of use, it is deemed incompatible with the GPL which is highly likely, it would discourage further open source efforts for it. This would be a shame, and it makes it even more important for this project to continue moving forward. I have emailed the Software Freedom Law Center and the "GPL Violations - Legal" mailing list to get more opinions on the GPL compatibility. I still haven't heard back from the SFLC, however the opinions are mixed on the GPL Violations Legal mailing list. Some of the opinions are that it's okay, but the arguments are a bit weak (ie: the user of the software can simply say that they're not using the Zigbee spec). However it looks like the Zigbee Spec's terms of use at least violate the spirit of the GPL which is to provide software without restrictions. I'll keep people updated on anything I find. I'm hoping that in the future, the Zigbee Alliance will follow Bluetooth's lead and allow Adopter membership for free. At that time, GPL'd software for it can exist unambiguously. However I'm not going to wait for that to happen. My old mentor would always tell me: "It doesn't matter whether the decision is right or wrong. A decision needs to be made." Hence the next release will be using the permissive Modified BSD license with the additional Zigbee Spec TOU restriction. Apologies if I've disappointed anyone out there. A stronger license can be applied by any individual by forking the code and applying a restrictive license to their contribution. In any case, I'm going to Akihabara to blow off some steam. This whole thing has taken a lot of energy out of me. The release will be coming soon... Hits: 1195 Trackback(0)
Comments (7)
![]()
...
written by Kevin Townsend, June 22, 2009
What kind of pisses me off is to see companies that don't want to pay the salary of someone to develop this stuff internally (which is most companies), and they use your own code without giving anything back despite the substantial benefit they get from the work done by others. On the one hand, GPL /is/ a bit of a straight-jacket if (like most of the world) you need to make a living with what you do, but it's really crappy if someone ends up taking everything you've worked your butt off for and doesn't really make the slightest effort to give a bit back (BSD). I can understand really being torn up by this, and BSD is certainly more 'accessible' ... I just hope some of the big players don't take advantage of it to replace parts of their own sometimes questionable stacks with no 'return' on their part.
report abuse
vote down
vote up
Votes: +0
...
written by Jon Smirl, June 22, 2009
Is there an independent book that describes the protocol in total detail without copying the spec? If a book exists we can just implement off from that and ignore the spec from the ZigBee Alliance.
I suspect that $3,500 requirement is to make money for Global Inventures and none of it is going to ZigBee. I can't see Freescale, Atmel, TI caring about $3,500 compared to the cost of having a chip fail to sell. The Siemens group has to push this internally. They should have the power to fix it. You might want to hold off with the BSD switch just in case they fix this mess. report abuse
vote down
vote up
Votes: +0
... written by Jon Smirl, June 22, 2009
I looked at the Certicom license, you need to be BSD to incorporate their code. It is annoying they picked this for home use. It is going to add $5 in cost to every node by the time everything is accounted for. To get around it with Linux you will have to use unnecessary CPUs in USB dongles. It may also be possible to push the encryption into Linux user space to relax the GPL requirements.
RSA has open source implementations and it is in the public domain. But RSA can be broken if you have 10,000 computers and four years. They should have required elliptical on the core utility nodes and used free RSA on in-home nodes. RSA is what is inside of https:, it's good enough for banks. From the GPl-violations list: The opposite example is the SD card forum. My company (MontaVista) wrote a GPL software stack for SD back in 2004 and immediately got a cease-and-desist letter from the SD forum (and we were a member of the forum!) because they did not allow a GPL version of the code. Fortunately, that requirement has been lessened about two years ago - and lately everybody happily ships Linux devices with real SD support - not just MMC support. Funny, Global Inventures runs the SD/MMC group too. See a pattern? report abuse
vote down
vote up
Votes: +0
Write comment
|
| < Prev | Next > |
|---|
LGPL lets people use the code in closed source programs, and just asks that any modificiation of the library should be shared. Its like BSD but forcing to share any modification in the library code.
I am not a lawyer and maybe I am missing something why the LGPL is not a good license for this situation, but I dont see it right now.