Video Bunnie Huang Shows Off His Open Source Laptop (Video) 24
Tim: So Bunnie, we are here at Maker Faire and you are showing off an early version of the open source laptop you have been working on. Can you talk about that project?
Bunnie: Yes. So we started this about a year and a half ago as a hobby project. We wanted to build our own laptop from scratch, to the circuit boards, to the case to all the bits and pieces. And we want to open source it as well. So we are very happy that the laptops are basically working. They are over there on the table. We gave our talk today using the laptops. I use it as my primary when I am traveling. So it is feeling very real.
Tim: When you talk about open source hardware it has a lot of different meanings to different people. How open source do you mean?
Bunnie: Right. So the rule that we have is everything I can touch is open. Like everything I can touch is open. And everything else that I can as much as possible source in when we make decisions becomes open. So for example, all the schematics, the board layouts for all the boards are things that we have open sourced as we design those. The case design is open source, you can go ahead and download that. The software of course is open source. There are of course parts that are closed source. Like for example, every chip on the board is made by a foundry and we don’t have access to the mass files for all those chips. We don’t know where the plastic is mined from, where the copper is mined from. Like all the subrecipes of all the pieces. So generally, in the open hardware community, we have been talking about notions of layers of openness, right? Because at some point in time, you can say, “Where does the tantalum come from?” “What is the design of the capacitor itself—is that open?” , “Where is the process geometry of the fab—is the fab itself open?”, “Can we actually open source” Like we even talked about doing our own chips. Well, we can do our own chips but then it doesn’t do anyone any good because you can’t get the design kits for the fab, because that’s all proprietary and blah blah blah So there are these layers you have to go through. So we are kind of hoping that we are peeling back one layer, right? Before it has been sort of a kind of a theoretical thing to have an open source laptop, so now we are just pushing one layer down. We are going to settle in that layer, we are going to get comfortable there, and then hopefully we can peel back another layer later on, layer by layer.
Tim: Some people have done things like taken Raspberry Pi mother boards and made their own laptops. What is the difference between going from one-off to things that are meant for multiple people?
Bunnie: Yeah, there are a lot of design decisions you have to make, when you are putting together when you know you are going to have to manufacture it. So a lot of the design decisions that went into this—we tried to take parts that are sourceable. Like it is not like you go and find this old VHS or Betamax thing, and pull this motor and we are going to use this. A lot of people say, “Why don’t you use a case from an existing ThinkPad or something?. Well,
Tim: You can’t be doing one thing.
Bunnie: Yeah, one thing. But I can’t really develop off IBM or Lenovo saying, “Hey, I’d like to buy a bunch of the old ThinkPad cases”, right? If I want to scale this up, I can’t really do that. So we have to design in mind that we have to manufacture them later on. And when you do the design right, and you’ve actually designed for manufacturability, it is actually not as bad to go ahead and produce an arbitrary amount for people who need it. This here is a wireless keyboard it can work with number of device. we are actually using a ThinkPad just because we like this one. And it goes ahead and you can slide it right in on the front. It actually forms a combination screen protector/mount for the keyboard. These are 3D printed. And they are just hanging off the bezel here if you can see. One of the great things about aluminum is that it is super easy to machine. So we are able to go ahead and just drill holes into it, cap the threads, screw these on, and add them to the front of the bezel. We tried to use them on a regular laptop—that’s nearly impossible. This here is the classic case design, right? The case itself, when it is closed, it looks like a semi-tablet like. When you go ahead and pull the slider, it has an air piston on the inside, which goes ahead and pushes the screen open. It has an array of mounting boxes on the inside. These are m2.5 threaded nuts. So basically, if you don’t want to have the battery or something like that, you can go ahead and fab your own things, stick in there a bigger speaker box, you want to put your cables in here, you want to put your power supply in here
Tim: There is room for a much bigger battery?
Bunnie: Yeah, there is room for a much bigger battery. So this is actually one of the laptops where rarely, speaking is, more wide space on the inside than there is lot of wide space. The main board is here. That is the Freescale i.MX6 CPU. We got memory on a DDR3 DIMM slot. This is an adapter that goes from LVDS to Embedded DisplayPort which is assay for driving this nice display. This here is the battery board. It has a gas gauge on the inside and a smart IC that goes ahead and runs its own OS in fact to go ahead and manage the power for the system.
Tim: And on the other side, among the things that are open source about it, the case design and the layout, so are the cases something that someone could really make themselves or, what is the complexity seems like?
Bunnie: Right. So the case is a fairly complex piece. When you get the design file, it is a full 3D model, all the surfaces are there. You could go if you found a big enough 3D printer, 3D print it and have a version of your case, but again we are talking about atoms not bits, and not all atoms are the same, there are compounds that are most suited for building case materials, and they require techniques and tools to go ahead and do them. So part of the complexity of actually doing the design, is how do we minimize the amount of specialty tooling required so that people can hack it. So if you look at the design, we use an aluminum bezel which is actually quite easy for people to machine at home, without a lot of specialty tooling or upfront costs. It’s a very intentional decision to go ahead and try to make the thing a little more hackable a little more acceptable.
Tim: I know I notice that you are using the bezel as a way to help the keyboard as well.
Bunnie: That’s right. That’s right. So we have the keyboard attached from the design overall, and then we go ahead and just drop the keyboard over the bezel with these 3D printed keyboard holders, and we actually really liked it if users can be able to pick the keyboard that they would prefer. Like everyone has an argument: “Oh, we don’t like the track point”, “We don’t like track pads”. Or, “We don’t like this, or this.” It is kind of a holy war. “We want Chiclet keys”. Or “We want regular keys.” You know what? It is like take your keyboard, you can attach it to the bezel because the bezel is hackable right.
Tim: And it also frees you from having to manufacture other parts?
Bunnie: That’s right. Yeah, the keyboard is actually very very difficult to manufacture, with all the moving pieces and parts. And keyboards really need to have a feel just the right feel to it. So the investment to manufacture a really good feeling keyboard is as big as the project of building the laptop itself.
Tim: As a subtle point, it really is important?
Bunnie: Yeah, it is.
Tim: So what is the actual work environment that iterates your design it. What is it like? Do you take apart a new laptop every day and iterate some small piece of it?
Bunnie: You know, that’s interesting because when we first started the project, we did go to some scrap yards and picked up some laptops; then we would take them apart and see what things they did like and they didn’t like, and learn basically how to build my laptop looking at other people’s designs. So we are undesigning to figure out how to do the design. The actual work environment does use proprietary tools, they use LCM, they use SolidWorks. I mean, I would love to use some of the open source tools but they don’t have quite the power they need to go ahead and design circuits of this complexity. But generally the workflow design is a very small part of it. We probably finish all the schematics and all the board layouts in a matter of month or two, right? But then we spend like twelve months of validation and testing and iteration like testing, testing, testing. Really there is so much testing that goes into it, during factory tests, costing things down, pushing through all the corners of the process, making sure it is manufacturable. The same thing is going to go for the case, like it took us a couple of weeks to go ahead and grind out the core case design. We have gone ahead and built these samples using CNC cut plastic, and so forth, and walking around with them and testing them, seeing how they handle, how much flexure there is, where the seams are coming apart, and we have to tweak the design, modify things and then finally move it to tooling.
Tim: Things like regulation and import laws; the US and Europe have pretty stringent laws?
Bunnie: Yes, they do.
Tim: What do you find, how does that affect your process?
Bunnie: It does affect the process a lot. One of the things about the laptop is it is a DIY project, right. So there is the last screw rule around the law or the regulation where the person who puts the last screw in is responsible for certifying the product to be compliant. And so one of the great things about it is as we actually ship those, we plan of shipping the device with a selections of bezels. You can pick one bezel or another bezel. So actually as an user, you are participating in the construction of your last piece, it is not just like the last screw literally but you are making a decision. No two laptops will be exactly the same. And so therefore it is kind of up to the user to go ahead and declare or actually understand if it is going to be okay for use in their environment.
Tim: So you are shipping a kit?
Bunnie: Yeah, basically we are shipping a kit, right, the way it boils down.
Re:I don't get it. (Score:5, Insightful)
His standard of open source is very different from the IBM BIOS rewrite:
Novena PVT HW Design Source [kosagi.com]
if you go there you can download all board design files to go make the PCBs and get them populated at your favorite board shop. (mechanical sources for the case are also available). This allows anyone to make improvements to the hardware as well as the software and feed it back into the community.
He also made component selections that further the open source accessibility: the CPU does not require an NDA to get the full documentation (unlike, say, the Broadcom chip in the Pi, or any Marvell chip ever), and the same goes for the rest of the chips on the board. No Bluetooth since ALL BT chips require a blob driver, but he can include a WiFi card that has open source firmware so he does.
The campaign was successful enough that they have also partnered with Jon Nettleton to create an open source driver for the 2d/3d graphics blocks inside the CPU which only has a proprietary driver now, this will help every Linux distro and user that has an i.MX6 board from any vendor run a completely open stack.
Feel free to correct my impression that after someone rewrote the IBM BIOS not everyone could go download IBMs design files (note: this is different than having "PC/AT compatible" designs)
Re:I don't get it. (Score:4, Informative)
The IBM PC/XT and PC/AT used entirely commercial off-the-shelf chips on the original motherboards. The Intel 82xx family of peripheral chips, to be exact. There were no ASIC or custom chips. The full schematics were published in the Technical Reference Manuals, including peripheral schematics. Yes, the floppy drive and hard drive included. All the commented BIOS source code was published in the TRM as well. This fact actually 'hurt' the BIOS re-write effort as anybody interested could read the source, and most people's view at the time this action 'contaminated' them from being able to write a clone BIOS.
If you want the schematic diagram for a Hard Drive, or the source code for the firmware of a Hard Disc controller card, you just had to buy the Technical Reference Manual from IBM. Which wasn't cheap, but it was obtainable by anybody with a few hundred dollars.
Re: (Score:2)
The original PC was fully open, but the AT had a keyboard controller and two PALs that had to be reverse engineered to produce a clone.
Re: (Score:2)
Would have been nice if he had used OpenRISC as the CPU though.
Re: (Score:2, Interesting)
Sure it would have, but I'm having trouble finding a quad-core 1GHz version that is fully documented and available for purchase.
I think bunnie's choices are pretty pragmatic based on his original goal of wanting a machine he knew and could share the internals of, but could use day to day.
Finding a high-volume, current-ish, high-end SOC with truly available documentation leaves you with few choices.
Re: (Score:2)
No Bluetooth since ALL BT chips require a blob driver,
Really? I'm pretty nearly 100% sure that's not accurate, since the bluetooth HCI spec defines a command protocol over several interfaces (USB, RS232 and a couple of others) for controlling a bluetooth host. This is the case for Bluetooth 4, perhaps not earlier versions, but it does mean that you can plug in any random bluetooth 4 USB dongle and it just works.
It's somewhere in the spec, but I didn't read it in detail since I was more after the ATT protoco
Re: (Score:1)
No.
It could (Score:1)
Windows CE for the i.MX 6 [wikipedia.org]
Re: (Score:1)
WinCE != Windows, you'd be better off with Wine, although granted not on ARM.
Re: (Score:1)
Simple. He got an idea, and developed it into convincing customers to give him $ 750 000 in less than two years.
Some consequences are
- it may be that his idea is interesting
- he certainly is more geek than you and me
- he also is most probably better organized.
I for one have tried to follow him for one year, but I completely missed the crowdfunding campaign, which incidentally tells a lot about my inconsistancy...
What is... (Score:2)
his pOrn name?
Re: (Score:2)
Cool idea...here's an improvement on it: (Score:1)
It's a cool idea.
I have wondered for years if it's possible to build & sell a motherboard for a laptop that allows the purchaser to plug in their components, and 3-D print a case.
Of course the purchaser could install a processor and RAM, but there's more.
The connectors would be on the outside edges of the PCB, so that different sizes of laptops could be made.
A small laptop could use a single DIMM, laid at an angle, while a larger laptop would use (4) DIMMs, sitting straight up. The difference is in how