Uses This

Interview

What do people use to get the job done?

Luka Mustafa

Luka Mustafa

Hardware hacker (KORUZA, GoodEnoughCNC)

Who are you, and what do you do?

My name is Luka Mustafa, otherwise known as Musti, a 20 something year old diggin' deep into creating open source things. Currently I'm a Shuttleworth Foundation Fellow, working full-time on development of the wireless optical system KORUZA at Institute IRNAS Rače in Slovenia that I founded in 2014. I'm also a PhD student at University College London.

My work focuses on opening up technology to solve real and immediate problems I see in the world, enabled by some great funding opportunities and an awesome team assembled around me. Current development projects include developing a novel and open wireless optical communication system (KORUZA), backing it up with the low-cost and manufacturing suitable toolset of GoodEnoughCNC machines, designed to be built out of commonly available parts. My vision is to develop and create systems that enable people on a global scale to solve their own problems.

What hardware do you use?

The hardware I use is a mix of reasonably priced industry grade equipment and a bunch of open hardware systems, a good number of them developed with my team, documented in an incomplete list at http://irnas.eu/services.

Since development work is everything from machining and electronics to, most recently, a bio-lab, it's relatively difficult to point out specific hardware, but it can be reasonably well grouped:

Computer equipment: A random mix of old PCs scattered around, mostly running Windows to control various CNC machines, a few up-to-date PCs and laptops for CAD design work, and a lightweight laptop running Ubuntu for networking and software development.

Workshop CNC machines: First and second generation Troublemaker 3D printers - these have proven to be workhorses, running constantly over the past two years, about 100 hours a week. The GoodenoughCNC machines, plasma cutters and large CNC mills in development and in partial use now, as well as a random selection of other CNCs, generally all controlled with Planet-CNC controllers that, although not open source, provide superb performance for a very reasonable cost.

Handheld power tools: A selection of generally cheaper/discount brands, but only those with a good reputation for decent quality. Through years of use, this has proven to be the most cost effective option, as none of the tools get a constant beating.

Electronics dev hardware: The complete range of open source, open hardware utilities like Bus Pirate, and a number of other open source tools, completed with generally available oscilloscopes and power supplies. A large box of Arduino and other open hardware platforms is a part of the toolset - just picking what works best for the particular task.

And what software?

Software, as for the hardware, is a mix of just about everything we might need to get a project developed. Since most hardware development software is for Windows, that's the preferred platform for most work, except software and networking which is so much easier on Ubuntu with the native shell.

For mechanical design, the software is mixed, from professional-grade Solidworks for complicated designs, where the time is more critical then allowing just anyone to edit the source, to OpenSCAD for more parametric and easily modifiable smaller designs, usually just parts and not complete assemblies.

For communication with my team as well as the outside world, we use a mix of Slack and Rocket.Chat.

Open source documentation for the projects is all located on GitHub, as the workflow is simple enough for anyone to use, not just software devs, while simultaneously offering web hosting and thus direct user commits to a live set of instructions or websites about open projects.

What would be your dream setup?

In my terms, the dream setup is a highly motivated group of people, each being able to use whichever tools they choose to develop solutions in a rapid prototyping flow. Generally this defaults to using open source tools where understanding and modification of them may be needed, and converging on whichever tool/software/process offers the most effective workflow to get the job done.