Personal tools

Atmel scenerio

From GPLv3 Wiki

I have an Atmel microcontroller. It has 40 pins. 5 are used to program it. Once it is programmed, they can be used for other purposes (however, if the 5 pins are reconfigured, it can no longer be programmed). I need all 40 pins for my project. I stick GPLv3 code on it, and want to give my finished box to my friends. I cannot, due to the anti-DRM clause:

nor for modes of distribution that deny users that run covered works the full exercise of the legal rights
granted by this License.

Since users cannot reprogram my device. This goes for any device whose firmware is not upgradable:

  • If it is in a ROM, as in IC mask
  • If the form factor does not allow flashing of the ROM
  • ...

Answers/ Discussion

I don't think this clause was meant to restrict these methods of distribution. After all, there are other changes that are specifically aimed at cases where the software is shipped on some kind of embedded device. For example, the terms for non-source distribution (section 7) now require you to make source available under option b for as long as you offer spare parts or customer support.
I think this clause is aimed at more obviously nefarious modes of distribution. For example, consider a new variant of the trusty tar format that has DRM capabilities, and will only let you make a certain number of copies of the work. That would prevent you from exercising your rights under section 4 to distribute as many copies as you like, and distributing GPLed work in such a form would not be permitted under this clause.
--brett 18:26, 21 February 2006 (EST)
As long as you provide them with the source code in a form they can modify as part of your mode of distribution, and use it to produce new object code to put onto a new controller, your mode of distribution does not deny them the full exercise of those rights, and so it doesn't seem like a problem. If, on the other hand, you don't give them the source code, or you try to control copying of the source code, it is a different issue entirely. a1kmm 20:00, 10 March 2006 (EST)
This blog entry speaks exactly about this. To summarize: Once the software is in that ATMEL microcontroller and it is locked up so it is technically impossible to reprogram it, it is the same case as having the software burned in a ROM. GNU GPL does not disallow this since this ATMEL feature (ability to reuse the 5 programming pins for other purpose for the price of inability to further reprogram the chip) this is not a "technical measure designed to deny the rights of the users", this is only a technical limitation of the device, so the anti-DRM clause does not affect this. What the anti-DRM prohibits is to add technical measures that disallow the users to replace the microcontroller (or ROM chip, etc) in your box with another microcontroller (ROM chip, etc) containing their modified version of the software. Btw, in the current draft the anti-DRM clause is called "No denial of user rights through technical measures" but the arguments in this paragraph apply to this new clause as well. hstech 05:16, 19 March 2007 (EDT)