What is Open Source Hardware?
ptorrone writes "In their piece 'What is open source hardware?', MAKE magazine divides up electronic hardware into layers, each of which has different document types and licensing concerns: Hardware (mechanical) diagrams, schematics & circuit diagrams, layout diagrams, core/firmware, software/API — each layer has an example provided and links to many of the open source hardware projects currently being worked on."
OpenSPARC is available from Sun Microsystems. The SPARC architecture is still highly relevant. Open source hardware projects like this are worth noting.
One very interesting example of open-source hardware is the Free Telephony Project.
David Rowe, the author has almost single-handedly designed an embedded computer using a blackfin processor combined with FXO/FXS (PSTN lines) chips to produce an extremely low-cost PBX running uclinux and asterisk. Recent posts indicate he's also close to producing a T1 interface as well. The amazing thing about this project is how open it all is. The cirucuit design, and layout for all of the boards are open. Also, he's committed to using only open-source software to do the design (and contributed a number of enhancements back to these projects, such as pcb). Not to mention also developing the uclinux based distribution, astfin, as well as a number of custom modifications to asterisk itself to use some of the Blackfin's special DSP capabilities.
You have a fab that can crank out a motherboard to order. A web page lets you pick the features you want, and then it arrives via overnight shipping.
If you care to sell your soul for rock 'n' roll, you can opt for the various DRM choices.
Maybe it arrives as a bag of chips, and you solder it yourself.
Interesting posibilities.
Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
The preferred document formats don't make sense. Distributing a schematic diagram as an image (pdf, png, etc.) is like distributing a program as an object file. In both cases modifying the item is nearly impossible. Schematic diagrams should be distributed in a format which a schematic editor, such as geda, can read. This is the electronic equivalent of source code. The same thing goes for printed circuit board layouts: just the image is not sufficient.
http://www.opencores.org/ has quite a few hardware designs (mostly RTL) ranging from cryptographic engines to complete processors. They were also instrumental in developing Wishbone, a completely open SOC bus architecture, akin to something like ARM's AMBA. IIRC you can also buy a pack of cd's which contain open-source or free-of-charge EDA software.
I'm not sure if anybody's said it explicitly, but a hardware equivalent to SourceForge would be a great asset to the community, where people can share RTL, schematics, PCB and chip layouts, and so forth.
The schematics for the paper clip are widely available, and easily cloned, and it runs the open source uBendTo OS!
-
Apoligies for bad joke in advance, apoligies for bad spelling come later.
It will be harder to impose policeware. Trusting your computer not to spy on you for someone else (be it criminal or not), is an equation of control. Open source hardware + open source software = nearly zero government leverage. Expect legislation concerning this if this technology takes off.
Still, using geda would definitely help. Shame so few people use it. Perhaps a something like a Protel to geda converter would be a GoodThing.
Engineering is the art of compromise.
The open source rapid prototyper: http://www.fabathome.org/wiki/index.php?title=Main _Page
No, you have that right now.
Every hear of Pad2Pad.com?
If you can do the layout, they'll make your board for you. Yes, it is kind of expensive for hobby projects, but for a computer motherboard it's not *terribly* bad. A commercially made motherboard is still cheaper, but I guess if you want something without DRM, you're always welcome to implement it yourself.
Now, the only problem is that implementing and debugging a computer from scratch could be a rather time consuming undertaking. But, if you've got the time, there are places who will build it for you, whatever *it* is.
The society for a thought-free internet welcomes you.
Ronja
The schematics for electronics and mechanical design are available, including in enditable source form.
SJW n. One who posts facts.
I'm surrounded by engineers with the capability to produce open source computers, but...
Nobody has the time or interest.
Yes, I (among many) could design and implement a computer complete from the gate-level design all the way up to the compiler and operating system.
Ironically, now that I have the knowledge, I don't have the time to work on it. It gets worse:
If I did build my own computer, friends and family would inevitably ask, "So why did you spend $(Multiple thousands) for a computer slower than the $299 Sam's club special?", and "Isn't that just an expensive hobby? - you don't really expect people to buy a 1 GHz ARM machine, do you?" etc..
I would like to work on open source hardware. I do have experience porting Linux to new architectures. But sadly, I think something about corporate america just takes away the passion from the discipline. Since I started programming more than 10 years ago, I have met only one person who was passionate enough about it to do it outside of work. And you know what he did? - mods for a game. Nothing really serious or interesting.
It's not that there is a lack of talent. Rather, apathy is fatal to open source. And we need to come to terms with the fact that the overwhelming majority of those with the knowledge to do something disruptive, to use their skill to change their world for the better, choose just to go home at night and watch tv.
They have no geek passion. They are irrelevant to the discipline. And they are exactly what Corporate America wants them to be.
The society for a thought-free internet welcomes you.
I admit I haven't really been paying attention to SPARC recently.
Can anyone fill me in on what its performance is like compared to x86 these days, when running Linux or Unix (Solaris)? (I don't think MS even supports Windows on non-x86 anymore, except perhaps Itanium and it's probably near-EOL anyway.)
There seemed to be a lot of buzz about the Niagara stuff a while back, and how amazing the performance/watt was going to be, and then it seemed to evaporate. Did something happen, or was that just the fanboys moving on to something else shiny? (And is Niagara open-source/open-architecture like the more basic SPARC processors?)
I've always been a big fan of RISC, since back in the early 90s; I think it's sad that we're fast approaching a monoculture, although there's some solace, I suppose, in the fact that with decreasing process sizes, you can now tack the x86 instruction set onto almost any real processor you want. But it certainly seemed like there were more avenues for performance being investigated back when you had IBM with Power, DEC with Alpha, Sun with SPARC, SGI with MIPS, HP with PA-RISC, and probably a bunch more that I've forgotten.
"Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
Years ago, when I was single and could afford toys, I bought a Blaupunkt Tuscon head unit - at the time (1987), it was the absolute best car stereo AM/FM/Cassette head unit you could buy. Could even receive AM Stereo from the one station in town that broadcast it. Set me back $750, and I still had to get an amp for it, since it only had line-level outputs.
But...
It came with a COMPLETE set of schematics, including not just block diagrams, but actual component values and chip numbers. Given that schematic, I could have build a complete new unit. I was floored. I almost wanted to try it, just to see if I could - but couldn't imagine trying to build the whole thing on breadboard with my trusty Radio-Shack soldering iron. Would have been the size of an old console record player - the kind that doubles as furniture.
Poor means hoping the toothache goes away.
Open source medical equipment is where the electronic designs, software, and diagnostic skills are completely and freely available to anyone who wants to build this piece of equipment for their own use. It will probably happen first in the developing world where this kind of equipment is not quite as illegal as it is sure to be in the West.
A lot of what passes for 'advanced' medical equipment in the US is actually kludged ancient technology. It sells for absurd amounts of money because of the bizarre 'cost-is-no-object' state of the American Health Care industry. And a lot of people are beginning to be denied basic medical care because they don't have the money to pay for it.
But a lot of medical tests could be done with inexpensive high-tech equipment that has been modified for home medical use. There may come an underground movement to build very high-tech medical equipment cheaply. Equipment that surpasses the quality of what is found in ordinary hospitals, but costs one tenth of the price. It would have no FDA certification, and would be quite illegal. No accredited doctor would use it.
The difference between open source software and open source medical equipment would be that the medical equipment would be illegal. And the people doing the test and interpreting the results would be subject to arrest for practicing medicine without a license.
But in many cases, the test results are just electronic data and can be analyzed by computer to give same level of professionalism as found in the hospital. An example of this would be having to pay $150 for a blood pressure test in a hospital that is identical to the test that you would get from the machine next to the door of your local grocery store.
The US electronic medical equipment industry is in about the same place as the US automobile industry was in early 1970's. Overly restricted by trivial regulations, smug in their belief in their omnipresent power, and completely unaware that they are about to get totally blindsided by people overseas who can do the job much cheaper and much better.
The USA lost the machine tools industry, the consumer electronics industry, most of the automobile industry, and many other industries by not paying attention to what the global consumers of these products actual need and want to buy. The US medical electronics industry is most likely being targetted now because it is showing all the same characteristics as those other industries that were dominated by American companies after World War Two.
I think the point is that maybe someday you might only be able to
buy sophisticated electronic products which are full of DRM or any
other crap (rootkits, etc) and if by that day there is no open
source alternative (that meaning open documentation and the likes)
with at least the most important features and no patent problems,
nobody is going to be able to start from the scratch such a big project.
And that would suck big time.
exp(i*pi)+1=0
Check out:
http://www.openhardwarefoundation.org/
http://www.opengraphics.org/
A lot of people are really taking this idea of open hardware designs very seriously, especially in graphics, where we have a really hard time getting docs out of GPU vendors to write Free Software drivers. One of the commenters on this article said something about how he and his colleagues who know how to do this stuff have no interest in doing it outside of work. This isn't true for everyone. The founder and leader of the Open Graphics Project is an experienced graphics chip designer.
Rank the following tasks in order of complexity:
- gate-level design of a modern CPU
- gate-level design of a modern GPU
- gate-level design of a modern northbridge
- gate-level design of a modern southbridge
- gate-level design of a modern audio controller
- gate-level design of a modern ethernet controller
- gate-level design of a modern wifi chip
- gate-level design of a modern usb controller
- the linux kernel
my understanding is that there is a lot of really, really badly made hardware out there. the software people are clever enough to reverse engineer the hardware and write drivers. Why not put a few of them to work forward engineering the hardware?
Which peices of a modern computing system cannot run acceptably off of re-flashable firmware, or better yet, re-flashable FPGAs?
At this point, are (some) resources better spent trying to create F/OSS reference designs for every essential component to build a fully open computer platform?
I like the idea of being able to have a 100% open computer, where each of the components is well understood and discussed out in the open, and people aren't wasting a lot of time supporting badly made hardware. Some de-facto standardization around reference open source implementations of the hardware could be a pretty good thing.
It's actually not stuff like the CPU that i care about.. its more like.. all of the other things that make it onto a motherboard. There's no reason to put up with noisy audio, non-functional s/pdif outputs, buggy "hardware" raid, crappy bios, etc. The only value-add in these components is when they manage to live up to their as-advertised specs reliably.
My opinions are my own, and do not necessarily represent those of my employer.
I was almost worried we wouldn't see a FUD post by you in this thread. A thread on open source or Linux just isn't as good without a troll post by The_Abortionist.
Pad2Pad does less than they used to. The original idea of Pad2Pad was that they'd make the blank board, then assemble and solder all the parts, using anything in the Digi-Key catalog. That made it useful, especially since surface mount device soldering really needs to be done in a production environment with the right tooling.
But they couldn't do it profitably. Now they're just another blank PC board maker, of which there are hundreds. It's been routine to send out your board design files and get boards back for almost twenty years now.
To those of you saying "I have the skills, but why bother?" or "Why would some company bother?", I can give a halfway decent example of why "closed" hardware can kind of stink. Of course, its also an example of why "closed" hardware can kind of be nice, for the manufacturer, especially if they are also sell content for that hardware.
;)
I ported uClinux to the Sony PSP (check it out at http://df38.dot5hosting.com/~remember/chris/. It wasn't on slashdot because they had more important stories to run, like what operating systems the iPhone DOESN'T run. But I'm not bitter
Anyways, this project was a major pain in the ass, and at the moment its kind of stalled. The problem is that the hardware design is closed, and most of the components are all consolidated onto one giant Sony ASIC so inspecting the motherboard is no help.
So... It took a million years just to get the memory map right, and understand the exception/interrupt plumbing of this customized not-quite-MIPS-R4400 cpu core, and understand how to talk to the video, serialport, cache controller, etc.
Now, I happen to know at least 10 people who would buy a PSP if it had a really well supported linux. Allowing people to target a popular platform, rather than a proprietary one, would allow really neat applications that made use of this things built-in Wifi/Audio/etc. In short, if it was an open platform, it would allow for better interoperability, more diverse applications, blah blah blah. And if its Truly Truly "open", people could even make new PSP's that maintained compatibility with current PSP software, but optimized it for other tasks, etc. Whatever, you name it.
Of course, Sony is a content company. The memory stick interface, from which you can launch applications, makes one think "Maybe I can write some software to dump my friend's UMD game to memory stick, and then launch that game from the memory stick, so I can copy it." But thats REMARKABLY difficult on the PSP because they will only run memory stick code that is cryptographically signed by Sony (unless buffer overflow exploits are used, etc. which exist and are what make uClinux/PSP possible) and due to the closed nature of the platform, I don't think anyone even knows how to get a signed copy of a UMD onto a memory stick.
So it works pretty well for Sony. And it stinks for me.
Someone should give a cheap implementation of SPARC a shot. IIRC, SPARC is very fast running C code because the way its internal registers are organized - minimizing memory hits to move stuff to and from a stack.
With the current critical mass of free and open-source software, there is little to no need to use x86 processors - a cheap, Solaris or Linux based notebook or desktop would solve a whole lot of problems people use those x86 abominations for.
My 166 MHz Ultra 1 still starts Firefox 2.5 faster than my 800MHz Pentium III. Other than the different processor architectures, I can't explain this difference (of course, the PC is running Windows, but not even that could explain the performance penalty).
http://www.dieblinkenlights.com
'Open source means free. Everything else is just a motivation to get people to work without being paid while the work itself is systematically devalued.'
Open source does not mean free as in beer. Its about freedom to use, modify, and distribute.