Linux Fund has raised money to build an initial ten OGD1s for open source developers. Their fund-raising has exceeded the initial fundraising goal of $5000; does this mean that additional cards will be produced?
Our initial estimate of $5000 was based on a combination of hope and
assumptions. Our original estimates were based on a 100-board production run. However, there are costs that remain
fixed when you scale down the quantities, more than we had anticipated.
Fortunately, the nearly $8,500 we have raised has allowed us to go
ahead with a production run of 25 boards and Linux Fund has loaned the
effort the additional funds needed to complete it. We are counting on
selling at least 10 boards to break even and will have them available
for purchase when the first boards are available to volunteer
Can you please give us an estimate of your progress thus far?
Besides the physical hardware, being build and undergoing testing and flashing, we have a sizable library of logic blocks (hardware vendors sometimes call these "IP blocks") that we've developed. This includes things like controllers for PCI, DDR memory, SPI PROMs, video, and even a simple MIPS-like microcontroller. Using those, we've developed working VGA emulation for OGD1. VGA isn't trivial since it requires a text mode where characters are rendered into pixels on the fly as they're being scanned out to the monitor. Instead of implementing that directly, we use our microcontroller (named HQ) to convert VGA text into pixels in the background, continuously scanning and reconverting the text buffer. This approach was much less invasive than hacking our video controller, and we were going to require a microcontroller anyhow to support DMA (at a future date). This also required a VGA BIOS. All of this can be found in the Open Graphics Subversion repository.
The svn head of the firmware needs some additional work to make it
ready for release, and we could use some help with that. Meanwhile, we
have a slightly older release that
does work, which we will be programming into the shipping boards.
It is important these cards get
into the hands of active developers.
What will happen to a card if its developer withdraws from the project?
Linux Fund owns these boards. Although OGP and Traversal Technology people are involved in the work, the financial and legal situation is that Linux Fund licensed the designs under the GPL and paid for the production. For developers who are given a board for free, the boards are technically on loan. If a developer decides to no longer be involved, they can either buy the board or they can help us to pass it on to another developer. Moreover, Linux Fund should be able to recall a board at any time if they determine that it is not being used for the intended purpose.
What is the target price you would like to sell the consumer version of your card at?
Originally, OGD1 was a fund raiser, and we were going to sell them at $1500 apiece. Even today, $1500 is a competitive price for a board of this complexity, but we will be selling it at half that with the goal of breaking even.
I just want to make it clear that our goal here is not necessarily to make a profit. What we want is to build "open" (Free-Design) hardware products. One way to do it is to create a self-sustaining business. Linux Fund came along with an alternative. Nobody is making any profit from this now, but if we're successful with getting developers on board to make interesting stuff using OGD1 boards, this may attract more donations in the future that we can use to create hardware products that Free Software users can really take advantage of.
To Free Software users, the biggest challenge is hardware whose vendors won't release docs on their products. Without them, we can't make free drivers that allow us to use the hardware we paid for. For some people, the answer is to pressure the hardware vendors into releasing docs. For us, the answer is to create our own hardware with designs that are free to begin with. Going forward, we hope for opportunity for commercial development because quite a large number of us would love to design hackable and Free-Software-friendly hardware as our day jobs.
Companies that are enthusiastic about supporting Free Software are something our community really needs. Are there plans to develop a PCI express version of the open graphics card? If so, what time frame will this be in?
This all depends on the community. Before OGD1, we didn't have any real hardware to show people, so we weren't taken seriously. With OGD1, perhaps now people will feel we've proven ourselves and decide to get involved. To make a PCIe version of OGD1 will require community expertise and community funding. Please note that OGD1 isn't strictly a graphics card. It's an FPGA-based prototyping platform that can be made into a graphics card. But it can also be made into innumerable other things. I'm interested in doing things ranging from recording-studio quality audio processing to wireless networking.
All of the 25 boards we produced need to be tested for manufacturing defects and overall serviceability. Once they pass this testing, FPGA and BIOS PROMs will be flashed with with the latest working firmware. We hope to have the first few boards tested and ready for delivery by OSCON.
You've put out a call for developers, but do you have a date that you're looking at for an official launch of sorts? Any shindigs planned (virtual or real)? How soon will the developers and the purchasers have their boards?
We don't have any firm dates yet and we are patiently waiting for the first batch of tested and flashed boards. This whole project has been an exercise in patience given the nature of hardware. Unlike software, you can't just tar it up and e-mail to the team. If we have boards by OSCON, we will definitely raise a toast to the project!
Are you hoping to build more OGD1 boards after these initial 25? How soon do you think this could be accomplished-- or what needs to happen before this can be accomplished?
We would love to build more boards if the academic or private demand exists. A second run certainly wouldn't take as long as this first and it is largely a question of money. No one wanted to take any risks with this first run and we are fortunate that Linux Fund was willing to front the extra money we needed.
It sounds like it's been a rough road for the Open Graphics Project to accomplish its goals; has it been harder than initially expected? What were/are some of the major roadblocks throughout the project?
Given that the to-do list was always clear, it was more a question of frustration than difficulty. Speaking from Linux Fund's perspective, the first challenge was raising enough money to comfortably begin the manufacturing process and then minor component-availability issues. For one of the chips, the price in the US had gone from $5 to over $15 was officially unavailable during the fundraising process. We found ourselves nervously buying from an overseas vendor using a combination of Skype and PayPal. Luckily, we didn't end up with a box of expensive chopsticks. Aside from those challenges, our general dependence on volunteer help has led to a few delays given that we're competing with personal lives. We'd like to congratulate one project member on the birth of their daughter during the project!
That said, everything they say about the challenges of hardware are true: it is a moving target thanks to component pricing and availability and the countless physical variables. We're still not out of the woods until we're sure that every surface-mounted pad is correctly soldered in place and that no other defects have emerged.
In the big picture, while the OGD1 has relatively good longevity, any volunteer-driven open hardware project runs the risk of being obsolete before ever reaching production.
In addition to Linux Fund and the selling of some of the OGD1 boards to create sources for funding, have you considered other community-funding routes such as Kickstarter.com?
While we admire the PR that Kickstarter.com is receiving, we are concerned that they are neither a 501(c)(3) tax-deductible nonprofit nor rely on actual funds received. Linux Fund has operated its capital projects since 2008 and feels it has a better, albeit lesser-known model.
How many people have really been at the core of the Open Graphics Project? Are there any people who especially stand out for their work and contribution?
Howard Parkin and Andy Fong get most of the credit for the printed circuit board, with some help from various others along the way. Timothy Miller developed most of the FPGA logic. Petter Urkedal is primarily responsible for the HQ microcontroller, along with a lot of its programming. Mark Marshall is primarily responsible for the VGA BIOS code. Mark Marshall is the official maintainer of the FPGA code for the Lattice XP10. Patrick McNamara is the official maintainer of the FPGA code for the Xilinx Spartan III 4000. Howard Parkin, Mark Marshall, and Petter Urkedal did a vast amount of simulation and hardware testing and debugging all of the FPGA and BIOS code to get it to work to the point you see in this video.
Is there any room for a newbie to contribute to this project? What would he/she have to learn to work on drivers or firmware? Is there an ODG1 101 to help people interested in the project but with a limited skill set?
On the Open Graphics Project wiki, there are some Verilog tutorials we've written for people who would like to get started on learning how to design chips. Even for those who don't have hardware in their hands, a lot of FPGA work can be done just in simulation, and there is Free Verilog simulation software (e.g. Icarus Verilog). Plus there is a ton of software work to be done. Right now, we have a working BIOS and microcode for VGA text mode, but we'd like to improve it, adding things like VGA graphics mode.
Finally, one of my dreams is to make the hardware equivalent of GCC. We really need a fully free chip design toolchain. Such a thing would lower the barrier to entry for those who want to design hardware, and it would also be a huge benefit to hardware vendors. FPGA vendors sink a lot of money into their synthesis tools. Most are pretty good, but they can also be very expensive. Developing a free toolchain would allow the hardware vendors to focus on hardware and give everyone Free and potentially better tools. I'd say that the cost of proprietary FPGA synthesis tools is the biggest barrier to entry for someone wanting to get into FPGA hacking. I have the background in both chip design and AI necessary to help design these tools, but we'd need a team of developers to complete the project.