Developing open & distributed tools for Fablab project documentation by Anu Määttä (Fablab Utrecht) [email protected] @narnua
May 13, 2015
Developing open & distributed tools for Fablab project documentation
by Anu Määttä (Fablab Utrecht)[email protected]
@narnua
Outline
● Introducing Fablabs● Defining problem and scope● Solution approaches● Documentation tools in Fablab Utrecht and
elsewhere● Prototyping data formats and aggregation● Development plans● Discussion
What is a Fablab?
● Started by MIT Center for Bits and Atoms
● Book: Fab – the coming revolution on your desktop by Neil Gerschenfeld
● Open access workspace
● Standard set of digital manufacturing machines
● Principle: make here → make anywhere
● Free (as in beer ;) to use
● Fab charter: as long as you share (what was made and knowledge on working with the machines)
Network of labs
● All over the place: about 50, in most continents● With few central resources● Labs by now operating mostly independently of
central control (by MIT)
What is the problem?
● Sharing designs has always been the intention, but tools are lagging behind
● Diversity
● Independent labs using platforms they are comfortable with
● Few common resources to pull these together, and structures to support development
● Tools originally meant for Fablab design sharing - software source code version control system - appear to be:
● Less usable by typical Fablab visitors
● Less suited for sharing the designs of physical objects (where images and human-readable instructions are needed on top of the object design file / code)
● SCOPE: physical object documentation for replicability
● PRACTICAL needs of sharing
Solutions?
● Thingiverse, Instructables etc?● Controlled by outside, often commercial parties
● Not available under open licenses for needs of customization and localization
● Would be outsourcing a central aspect of Fablabs' mission to share knowledge
● Interfere with further Fablab community building efforts
● + communities of makers
● Centralize?● Imposing central control and one size fits all
● + easier to set up and maintain
● Distribute? ● Work needed by all participants
● Managing complexity
● +Flexible for independent lab needs
● +open for further innovation
Requirements
● Possible to use tools familiar to individual labs
● Catering for typical Fablab users
● User interface matters!
● Rapid prototyping the solutions as practical needs arise
● Bottom-up rather than top-down planning and execution● (In practice, some central planning needed to maintain progress)
● Possibly combination of centralized and distributed approaches
● Connected with other communities of makers (e.g. Thingiverse API)
● Comply to open source hardware standards (e.g. register as OHANDA product)
Documentation @ Fablab Utrecht
● “automatic documentation”
● Check in, check out
● http://fablab.nl/articles/2011/04/12/documentator-check-in-check-out
● Part of lab visit workflow
● With Drupal
● Eye-fi camera
protospace.nl/fabmoment/open-source-objects
http://protospace.nl/fabmoments/low-res-hi-quality-vases-ultimaker
Tools @ other Fablabs
● e.g. Switzerland, Barcelona, Japan using Wordpress● Peter Troxler for Swiss Fablabs● “Fab Source” project in Japan
● e.g. Iceland using Mediawiki● Bubbling under: Joomla, Ning, ...
Aggregator: step 0 - RSS
● Wordpress: custom template to include additional image namespace
● Use of an additional namespace to add images to RSS feed● xmlns:media="http://search.yahoo.com/mrss/"
● Drupal: custom template also needed
Aggregator: step 1 - FabML
● With current tools it is as easy to produce custom XML as it is a customized RSS feed
● Can be produced with any (open source) tool used by individual lab
● Simple XML definition to minimally define projects for sharing
● Required features● Media enclosures● Design source files● Human-readable instructions for replicability
FabML: example
●In Drupal: ● Views bonus pack: plugin Views XML (source)● Feeds & Feeds Xpath parser (aggregator)
<fabmoments> <fabmoment> <original_url>http://protospace.nl/node/1682</original_url> <author>joris</author>
<project_name>Low res hi quality vases on ultimaker</project_name> <machine>3d printer</machine>
<instructions>Single walled low res hi quality vases. Big one more than 220mm high, printed is 1.5 hour on a
Ultimaker...! ... </instructions> <image_flickr>
http://farm4.static.flickr.com/3051/5776099442_73ea8367ec_m.jpg</image_flickr> <image>
http://protospace.nl/sites/default/files/2011-05-29%2013.15.40.jpg</image> <source>
http://protospace.nl/sites/default/files/vaas_220mm.stl</source> <source>
http://protospace.nl/sites/default/files/vaas02_77mm.stl</source>
</fabmoment> </fabmoments>
Aggregatorfabmoments.org
Plans
● Finalize the aggregator demo for annual Fablab conference in August (Fab7)
● Provide central documentation option for Fab7● Collaborate with Fablab Japan for Wordpress-
based feed production● Exploring ties to Mercurial used by MIT
Discussion
● Feasibility of defining a standard for Open Source Hardware documentation?
● Use of existing content definition frameworks such as XML, RDF, RDFa?
● Issues of distributed collaboration – feedback mechanisms and derivative objects?
● Connecting with other Open Source Hardware documentation efforts and emerging standards (such as OHANDA)?