I love the ideals of Free Software. Make something, share it, remix it, make it better, share it more. Amid the world of heavily entrenched copyrights, patents, and trademarks, we have the phenomenon of “open source” software, released under freedom respecting licenses. Browsers, office software, graphics software, operating systems, web-servers, mobile phone software – it’s great!
It’s not a new phenomenon. And it’s not limited to software. People have been sharing their creative works for hundreds of years, from the political pamphlets of Thomas Paine that helped shaped America, to the amateur ‘zine communities. The early digital age of sample tracking, the current age of Wikipedia, SoundCloud, and the Creative Commons. That’s not to mention all the cracking of warez, remixing of tunes, and fan-fiction that’s out there. We love to improve and share things. Add that to the new phenomenon of crowd-source fundraising and you have the start of something amazing…
Let’s build PC’s, smartphones, home servers, supercomputers, and everything else we need from community crowd-sourced funds, using open source designs. In this article, I will hypothetically build a PC completely from open projects. These projects are already in place.
For the sake of argument, I’m going to start with the stalwart pillar of our digital lives, the humble desktop PC. We will need chips, circuit boards, and a case. We will also need all the software from embedded initialisation all the way to a web browser.
The horse to back here is the OpenCores project. Open source, modular chip design released under free software licenses. The problem with chips is they are expensive to make. The good news is that they are also easy to emulate. A chip designer can run his circuit through a computer program to check for bugs. OpenCores is a community of chip designers, building “blocks” of micro-circuits that can be put together into all sorts of microchips, from motherboards to systems-on-chip like smartphones.
In the same way that the Linux kernel and other free software projects are both funded and developed by big business as well as volunteers and hobbyists, we could have a standard, stackable processor design for anyone to manufacture.
Of course, the difference between a program and a chip is that once designed, a program can be copied for free, whereas it can cost a million bucks to prototype a complex print of silicon! The design on the other hand, is certainly achievable so far. Let’s look at our next step:-
So, assuming a hypothetical chip design, how can we make it real? Like I said above, we’ll need a million bucks. There are two feasible ways to achieve this. Crowd-sourcing, and/or big business.
The big business model is simplified (horribly) like this: Company-A makes CPU’s for the server, workstation, and home computer market. They like our design, so they “steal” it legally and make a few for their budget range – or something.
Company-B makes budget motherboards for home builders and OEM’s. They buy a load of these chips and make their mainboards, whereupon we buy one, and have a working mobo for our open-source PC…
The crowd-sourcing model is a bit more airy-fairy, but is still viable. It goes like this. We stick up a KickStarter project for a million quid, offering a sliding scale for thank-you gifts – a working pc, a batch of chips, that sort of thing. Universities, seeing the educational benefits, pitch in a bunch of cash. Mainboard makers too, hoping to get a hundred or so of the first run. Embedded device makers put in a bit too, to get a pledge-gift of the prototype run.
Once the million is made, we make a “foundation” and a company, and order a print on real silicon wafer. Using the same technique, we build a motherboard around it. Other hardware could be created in this way, like graphic, sound, and networking cards, as well as RAM and hard disk controllers.
A million on KickStarter is certainly possible, if a little unlikely. It means a million people give a pound, or a thousand give a thousand. Projects like Amanda Palmer’s album and tour raised a million. Quite a few projects have. With a high enough profile in the tech world, including the “hippy” tech world like the OLPC and GNU projects, a million is obtainable.
I would like to specify a license for the chip(s). A proprietary software company like Microsoft should be able to run their software on it, or sell it in their devices. They should not be able to block it. Old hardware should be recyclable. If I find an old MS Windows tablet for second-hand with our chip in, I should be able to run Linux on it, or at the very least, rip out the chip and stick it in my own compatible motherboard. Any improvements made by MS on their chip should be released back to the community, and should not block other software, and any patents held on code methods should be unenforceable (unless someone rips the patent off without using the open source code, or someone uses the free code, but locks it into a proprietary system).
System Device Software
The BIOS, and any variation, such as UEFI, is the first real piece of software the computer gets. It usually sits on a flash-style chip stuck to the motherboard. In most computers, it’s written by a company who release it as proprietary software. American Megatrends is one example, a company name millions of PC users see when they switch on their PC, whether they run a free operating system or not. Of course, it’s proprietary, so you only get an update when theysay you’ll get one, and not if it’s old hardware they’re not making a profit on.
This won’t do for our hypothetical “open PC”. We’ll need a free software BIOS. Luckily, there is a long-standing project to provide one, called Coreboot. Coreboot is mainly a science/hobby project at the moment, but it has real applications in areas like datacentres, supercomputers, and embedded devices. It supports implementations of UEFI, and runs on a wide range of motherboards. With an open-source design, emulators and on-board software could be written before the first chip comes back from the fabrication plant.
The same goes for graphics cards and other internal and external peripherals. With emulators and open specifications, drivers could be created before the first one is made.
Eventually, all hardware could hypothetically be created in this way. Hard disks, keyboards, monitors, smartphones… Some hardware, like the RepRap 3d printer, the Raspberry Pi microcomputer, and the FreeRunner phone, have already been created using these methods. PC processors were open-sourced by Sun, namely the OpenSPARC range, so we know it is possible, even if some of these projects were not commercially viable at the time, for one reason or another. Check out the UzeBox, Arduino, and Bugs.
So, we have a nice working PC motherboard, with everything running. What do we put it in? Well, we need a design first. Thingiverse would be a great place to start. Thingiverse is an online store for 3D designs. Think SourceForge, or GitHub, but for CAD, blueprints, and Google Sketchup files instead of source code and executable software.
I’ll mention the really amazing thing about Thingiverse in a minute. First, we can look at a couple of ways this could be realised. Again, we have the crowd-source, and the big-business models.
So, a company like Aria, who make cases, like our design, and make a load, whereupon we buy one, end of story. Or, we crowd-source the cash and run off a few, selling them, and keeping one for ourselves. Money saved designing is money saved producing, which translates as lower prices. That’s not to say a large specialist company like Alienware couldn’t pay somebody to develop a cool open design for our PC case, with a sticker recess for branding later on.
There is another way. At least for things as simple as PC cases, which are mostly just moulded plastic, anyway. This is the really cool thing about Thingiverse I wanted to talk quickly about:-
Thingiverse isn’t just a repository for 3D models. Those 3D models are actually for 3D printers, like the Makerbot and the RepRap. With one of these machines, you can replicate broken toy parts, doorknobs, knife handles, well, pretty much absolutely anything. Wait, it gets better!
While the Makerbot is an excellent machine, it is very expensive, costing a couple of thousand pounds. The RepRap is a bit different, costing only a few hundred pounds.
The RepRap is an open-hardware project of it’s own, with the intention of creating a machine that can replicate itself! Ok, it can’t replicate microchips, or circuits (much), but all the mechanical parts, cogs, wheels, etc, are all printable.
All the software to run it is free, so in theory, all you need is a PC, and a mate with a printer (plus a mail-order for any circuit stuff you need – all standard and obtainable in RadioShack, or online), and you’ve got yourself a working 3D printer. Now make one for your friends!
For the creative interested in free sharing, it’s a great kudos-magnet. A DeviantArt for physical products? Very possible. For the creatively challenged, it’s a huge choice of great designs to download, print, and shove a motherboard in. Designers can be commissioned for cash, the designs left open for anyone.
Operating System and Beyond
This is already there, and all over the place. GNU/Linux is in supercomputers, server data-centres, Linux Android has taken over on phones, and the Linux kernel itself is in everything from robot controllers to washing machines. Linux devs can work magic with open architectures. Just add our chip to the unbelievable array of hardware Linux already supports.
On top of that, there are graphics software like MyPaint, browsers like Firefox, actually, the list goes on and on. This isn’t a part of our PC that has to be hypothetical.
Of course, if this system works for a PC, it will work for anything. Supercomputers running company data, TV’s, smartphones, all hardware is possible. Designs? Maybe steampunk this week, minimalist next week, even custom wood-carved phone and e-reader skins. A walnut laptop and smartphone? Integrated couch/tablet/remote control? By designing with modularity in mind, there’s no reason why not. It already happens, in fact. Look at all the PC mods on Instructables, for instance, all designed around the ATX standards.
Our hypothetical PC already sort of exists, like a jigsaw still in it’s box. Some other exciting developments that could also pave the way for an open-design revolution are also in the pipeline. I’ve already discussed 3D printing for physical parts, but another problem is electrical circuits themselves.
Ink-Jet Printed Circuits
This is already a real thing. By filling specially adapted printer cartridges with metallic ink, it is possible to print a circuit. You don’t get the same amount of resolution as you get with a slice of silicon, but it’s a circuit, nonetheless. OLED’s printed on acetate and other wonders are already a reality.
Using an inkjet printer, one can also print acid-proof ink onto a standard copper-backed blank PCB, where it can be dipped in acid to produce the circuit. But here we’re actually talking about printing whole chips on plastic paper, which is a bit cooler!
I can see this being hooked onto the RepRap project. Imagine a circuit printer capable of replicating it’s own circuits, chips and all, by printing out a “book” of circuits on special paper. Now make all the physical and/or moving parts for this inkjet printable on a RepRap machine. Finally, make the printer print all the necessary “pages” of circuitry needed to run a RepRap itself. You now have a fully replicatable replicator, cogs and chips and all.
Now leave the whole thing as “open-source”, and let the community improve it…
Home Silicon Chip Fabrication
Picture this: The latest stable release of our processor has just been announced. We download the code, pop a piece of raw silicon into a “burner”, fab ourselves a working chip, shove it in to the motherboard, and reboot. Sound a bit far-fetched?
Enter Jeri Ellsworth. According to Wikipedia, she’s a pinball expert, computer hobbyist, and self-taught chip designer. I’ll give you a second to let that one sink in…
Jeri has come up with a way integrated circuits can be made at home. Silicon transistors. At home. Hand-etched, home baked silicon chips. Imagine that system could be automated in some way, combined with a 3D printer, a circuit-printing inkjet, and a worldwide community of designers, and what you end up with is a complete download-and-print PC.
All we would need then is some sort of machine that creates the raw materials. Shove in some sand (or your old chips), and get a silicon wafer. Pour in some oil (maybe grown from hydroponic hemp or rapeseed) for plastics and bio-fuels.
Back to Now
I’ll finish with a question. Why isn’t this happening? I would really like to know. My guesses and research point to a few things, but I’d like other opinions. Is the chip design market trapped in sticky patent issues? Can we hardly move but for trespassing on intellectual property?
Is it that the chip designs themselves are just in hobby stage, great for playing with, but not what you’d call commercially viable? Perhaps it’s just nobody’s ever attempted it, or the investment money can’t be found.
Every so often, a project starts like this. Some fail, some go on to achieve cult status. Some. however, actually succeed…