I have written a Java GPL application that makes use of a variety of open source libraries released under Apache, LGPL, MIT, BSD and GPL licenses.
I’m now faced with trying to add support for a hardware measuring device to my program. The manufacturers of the device are happy for my software to interact with the device, however, they will only give me the specifications of the protocol it uses if I will keep them secret. They are happy for various software to talk to their device, but they don’t want to allow other manufacturers to develop a competing device by looking at the source code I write.
I am thinking of writing a separate library that does the comms with this device and releasing it under some sort of freely available closed source license. If I was to do this would I still be able to link to it from my own GPL application? Remember my app requires some GPL libraries for other aspects not to do with the measuring device? If not, what about if I altered the license for my app to LGPL instead. Would that work?
Basically I want a solution where I get to release my code under open source and maintain the manufacturers secrets at the same time.