OSH Best Practices, Sparkfun, and Complexity vs. Openness at Intel
Participants: Nathan Seidle, Jim Chase, John Hawley. Written and coordinated by Seth Hunter.
At Sparkfun*, in the spirit of sharing, all of their project files are stored on GitHub* and shared with the community for tracking and issue filing. They use Eagle* as their primary design tool not only for historical reasons but also because 90-95 percent of the Open Source Hardware community uses Eagle, and their customers are used to downloading files in that format.
Derivatives are a form of flattery in the OSH world, increasing your reputation in the ecosystem. Both parties can learn from each other when working on their next projects. Licenses are not used for legal reasons but to signal intent. Sparkfun is open source not because of the branding but because it makes them a stronger company. It forces them to set up their production, QA, and engineering chain to be faster and more flexible.
Opening up complex SOCs such as the Intel® Edison is difficult because of specialized software and Intel’s third-party relationships. When you borrow from inside your own company, and aspects of the SOC implementation rely on proprietary technologies, it is easier to present the complex portion as a “black box module” and open up all the API’s to the hardware.
The other aspect of keeping a module closed is in the manufacturing, related to volume costs and FCC certification. The more complex the implementation and the number of dependencies, the more difficult it is to support the community and open the product. We are seeing a positive shift in the degree of openness in reference designs and the quality of documentation, enabling OSH products to interface with closed modules.
John Halley, evangelist for the Minnowboard* project in the Open Technology Center discusses the technical approach to opening the core firmware that he and his team took. SOC manufacturers can still do open hardware; the real question is what information you need to get out there in order to replicate the board.
From the perspective of the SOC as a black box, a lot of efforts have been on making the firmware as open as possible without any binary blobs in the firmware support package. Three different companies have not taken the core elements of the Minnowboards or derivative boards that exist out there.
Jim Chase and Nathan Seidle explain why they were motivated to collaborate and how their skillsets complement each other. Sparkfun created 12 breakout boards that are available here to close the gap between embedded Linux* developers and makers who are comfortable with the Arduino* ecosystem.
In addition, there was a real need to have some example layouts in Eagle* that customers might use as templates for working with the Intel® Edison if they eventually want to condense the breakouts and the Intel Edison module into a single unit and manage the 70-pin connector on a single layer board.
As we concluded the conversation, Jim explained some of the complexities with upstreaming the Linux* kernel for Intel® Edison and some of the tradeoffs between working with third parties to get their platforms working with Intel Edison and opening more of the stack. Nathan responded by saying how encouraging it is that large corporations are discussing OSH with smaller developers and innovators. (He feels the future of IoT development will come from the maker/hacker communities.)
With the introduction of Raspberry Pi*, the Beaglebone*, and the Intel Edison to the maker community, Nathan sees a transition happening from bare metal programming to embedded Linux development, with the key difference being that more people who come from a software background will now be able to experiment with physical computing.
Nathan Seidle (pronounced sigh-dle) is the founder and CEO of SparkFun Electronics in Boulder, Colo. Nathan founded SparkFun in 2003 while an undergraduate student in electrical engineering. Sparkfun has grown to over 150 employees and is one of the leaders of open source technology. Nathan was instrumental in initializing the open hardware logo and is active in the open hardware community. He currently serves on the board of the Open Source Hardware Association.