Linked by David Adams on Thu 29th Oct 2015 04:53 UTC
Hardware, Embedded Systems Andrew “bunnie” Huang & Sean Cross tell, in great detail, how they created the Novena laptop, using solely open source software and hardware. For anyone familiar with or even interested in how computers really work, it's quite a gripping tale. I believe their work could have lasting beneficial effects on the hobbyist computing and open source communities. Even though it's published in a trade journal for professional electrical engineers, the article is accessible, even rudimentary at times. They faced some considerable obstacles, such as a lack of driver support for their GPU. Fortunately, "the user community behind Novena is trying to create, through reverse engineering, open-source drivers that would allow the built-in GPU on the i.MX6 chip to render graphics directly." Most interesting feature: "a field-programmable gate array (FPGA), a type of processor chip that can be reconfigured by its user to change the chip’s specs and capabilities. Basically, this reconfigurability allows the chip to do things in hardware that would otherwise have to be done in software." Also, two ethernet ports.
Order by: Score:
Comment by Drumhellar
by Drumhellar on Thu 29th Oct 2015 06:21 UTC
Drumhellar
Member since:
2005-07-12

I'm not sure why they went with the Freescale ARM over an Intel chip - yeah, Intel chips have updatable microcode, but it isn't something that persists across boots - it gets re-loaded every time you boot the computer. You don't have to use them, either.

This would also give you a GPU with an open source driver.

Reply Score: 4

RE: Comment by Drumhellar
by Lennie on Thu 29th Oct 2015 08:59 UTC in reply to "Comment by Drumhellar"
Lennie Member since:
2007-09-22
RE[2]: Comment by Drumhellar
by Drumhellar on Thu 29th Oct 2015 17:46 UTC in reply to "RE: Comment by Drumhellar"
Drumhellar Member since:
2005-07-12

Right. I'd forgotten about that.

Are AMD platforms equipped with anything similar?

Reply Score: 2

RE[3]: Comment by Drumhellar
by Lennie on Thu 29th Oct 2015 18:06 UTC in reply to "RE[2]: Comment by Drumhellar"
Lennie Member since:
2007-09-22

Not that I know off, otherwise I think we wouldn't see things like this:

http://www.phoronix.com/scan.php?page=news_item&px=Libreboot-ASUS-K...

You know, Intel is a great company they make good products and they do a lot of good open source work.

But open source isn't the same as free software (freedom for users).

Edited 2015-10-29 18:09 UTC

Reply Score: 3

RE[3]: Comment by Drumhellar
by ssokolow on Thu 29th Oct 2015 22:18 UTC in reply to "RE[2]: Comment by Drumhellar"
ssokolow Member since:
2010-01-21

The closest thing is probably that AMD is in the process of phasing in ARM TrustZone cores on their x86 dies to meet the demands of DRM-using parties (starting with APUs for tablets and the like) who currently rely on the Intel Management Engine to implement trusted decode path.

http://www.alexrad.me/discourse/why-rosyna-cant-take-a-movie-screen...

By the very nature of TrustZone, that'd at least match the Intel management engine's "higher privilege level than the OS" characteristic.

I don't remember the URL for the press release I read, but here's their feature page for it:
http://www.amd.com/en-us/innovations/software-technologies/security

Edited 2015-10-29 22:25 UTC

Reply Score: 4

RE: Comment by Drumhellar
by kwan_e on Thu 29th Oct 2015 09:13 UTC in reply to "Comment by Drumhellar"
kwan_e Member since:
2007-02-18

yeah, Intel chips have updatable microcode


There were other issues that influenced going to FreeScale.

Reply Score: 2

RE: Comment by Drumhellar
by pgeorgi on Thu 29th Oct 2015 10:22 UTC in reply to "Comment by Drumhellar"
pgeorgi Member since:
2010-02-18

[microcode] gets re-loaded every time you boot the computer. You don't have to use them, either.

If you don't, various features may not work. On some Via CPUs, not loading microcode has the disadvantage that every attempt at CPU power management (p-states) hangs the system. On some Intel CPUs, VT-x crashes without a microcode update.

Often, these update fix issues that are less visible but just as dangerous (cache corruption being the most common).

This would also give you a GPU with an open source driver.

Like nearly every other GPU driver, recent Intel drivers require hardware descriptions in a data structure that isn't easily reimplemented.

Reply Score: 3

Not great as an actual laptop
by tidux on Thu 29th Oct 2015 07:02 UTC
tidux
Member since:
2011-08-13

I have one and even now the GPU drivers are flaky as hell. I keep it on a shelf for headless stuff until etnaviv gets more mature.

Reply Score: 4

Some other great content by Bunny and Xobs
by Lennie on Thu 29th Oct 2015 07:50 UTC
Lennie
Member since:
2007-09-22

The Exploration and Exploitation of an SD Memory Card [30c3]

https://www.youtube.com/watch?v=CPEzLNh5YIo

This explains everything about the Flash-based storage technology and market.

Reply Score: 3

David Member since:
1997-10-01

The guy really is a national treasure, isn't he?

Reply Score: 1

Lennie Member since:
2007-09-22

More like an international treasure ;-)

Reply Score: 2

DE?
by MrHood on Thu 29th Oct 2015 08:35 UTC
MrHood
Member since:
2014-12-02

I couldn't tell by the article, but I'd be really curious to know which kind of default software setup they went for... The desktop environment, in particular. ;-)

Reply Score: 2

RE: DE?
by Lennie on Thu 29th Oct 2015 09:08 UTC in reply to "DE?"
Lennie Member since:
2007-09-22

The article mentions:
Debian and Xfce4

There was no graphics acceleration, the community has developed a 2D driver for the GPU as I understand it from the article.

Reply Score: 2

RE[2]: DE?
by MrHood on Fri 30th Oct 2015 07:55 UTC in reply to "RE: DE?"
MrHood Member since:
2014-12-02

Thanks for pointing that out, I totally overlooked that part of the article. Also, I like their choice - seems quite safe / stable to me.

Reply Score: 1

Reverse engineering?
by Savior on Thu 29th Oct 2015 09:21 UTC
Savior
Member since:
2006-09-02

What I find a bit strange is that "The user community behind Novena is trying to create, through reverse engineering, open-source drivers", even though this is supposed to be "A Laptop With No Secrets".

****

After reading the relevant part of the article, it is very sad that apparently they couldn't create a laptop with fully open source HW. I am wondering if it is possible at all.

Reply Score: 5

RE: Reverse engineering?
by TemporalBeing on Thu 29th Oct 2015 16:12 UTC in reply to "Reverse engineering?"
TemporalBeing Member since:
2007-08-22

What I find a bit strange is that "The user community behind Novena is trying to create, through reverse engineering, open-source drivers", even though this is supposed to be "A Laptop With No Secrets".

****

After reading the relevant part of the article, it is very sad that apparently they couldn't create a laptop with fully open source HW. I am wondering if it is possible at all.


KDE had a similar project for a their own tablet and were having issues with getting fully open source hardware too, namely because a lot of vendors have their own little firmwares that they don't want to release the code to. (https://lwn.net/Articles/606100/)

Reply Score: 3

Open source + Xilinx = fail
by mack on Thu 29th Oct 2015 10:54 UTC
mack
Member since:
2015-02-18

Looks like they opted for a Xilinx Spartan-6 for the FPGA. Which requires closed-source tools to generate the bitstreams...

I would have expected them to go for Lattice iCE40.

Reply Score: 3

sun CPU
by marc.collin on Thu 29th Oct 2015 12:33 UTC
marc.collin
Member since:
2012-08-03

sun have put some cpu in GPL.

Why not using them?

Reply Score: 3

RE: sun CPU
by agentj on Sun 1st Nov 2015 13:48 UTC in reply to "sun CPU"
agentj Member since:
2005-08-19

Because it's similar to trying to build your own space ship if there is reference design available. To get such CPU even fit into FPGA's resources and running, you need beefy and expensive FPGA, and still you will not get clock speeds comparable to ASIC. You will also need other parts like DDR controller,serial ports, GPIO, DMA, GPU, etc., so SoC itself would be a big project on its own.

Reply Score: 2

Decisions
by avgalen on Thu 29th Oct 2015 12:39 UTC
avgalen
Member since:
2010-09-23

I realise they only wrote the basics in this article, but they had to make some tough decisions that pushed them into very specific directions. They went with a 32 bit CPU and thus 4 GB maximum memory and a GPU that has no hardware acceleration support (as of yet)...but they mention not choosing Android because it is touchscreen focussed and thus wouldn't fit CAD-purposes.

I was also shocked to find out that this machine costs 2000 dollars, selling 500 of them and purchasing machinery for 50.000 dollars. This is not a hobbyists for fun project, this is a serious business.

And although the focus of this article is "open, open, open", I actually am most impressed by their hardware approach. A "one-click opens the hood" and "insert your own specialized hardware in one of these many places" design that really wows me

Reply Score: 4

RE: Decisions
by David on Thu 29th Oct 2015 14:08 UTC in reply to "Decisions"
David Member since:
1997-10-01

Ultimately, it's clear that this project serves two purposes: 1) an ideological one, with a bit of a cautionary tale about the danger of ceding control of personal computing to untrustworthy unaccountable hardware and software vendors and 2) the possibility of creating a uniquely useful device; not particularly useful as a general purpose laptop, but potentially extremely useful as a customizable and flexible tool for all kinds of niche and research purposes.

Reply Score: 1

RE: Decisions
by Morgan on Thu 29th Oct 2015 17:06 UTC in reply to "Decisions"
Morgan Member since:
2005-06-29

I was also shocked to find out that this machine costs 2000 dollars, selling 500 of them and purchasing machinery for 50.000 dollars. This is not a hobbyists for fun project, this is a serious business.


Their margins are likely lower than you think. It's basically a two person operation, so time is a huge factor. I would put the raw cost of parts at around $800 to $1000, not counting the time it takes to mill out the case parts, put it all together, test each unit before shipping, and so on. Time was also sunk into sourcing all the parts and finding vendors willing to work in such low volumes. Bunnie's blog goes into great detail about the entire process:

http://www.bunniestudios.com/blog/?cat=28

Reply Score: 4

RE: Decisions
by agentj on Sun 1st Nov 2015 13:40 UTC in reply to "Decisions"
agentj Member since:
2005-08-19

4GB is address space limit. Unless you use some ancient ARM cores, you get LPAE

Reply Score: 2

RE[2]: Decisions
by avgalen on Mon 2nd Nov 2015 09:35 UTC in reply to "RE: Decisions"
avgalen Member since:
2010-09-23

Our i.MX6 SoC contains a quad-core ARM CortexA9 running at 1.2 gigahertz—a 32-bit processor, which means the system is limited to 4 gigabytes of RAM

Reply Score: 2

Open hardware??
by dionicio on Sun 1st Nov 2015 14:53 UTC
dionicio
Member since:
2006-07-12

The industry is so easily gripped. As for those FPGAs, just check the state of WHO remains in the industry, and more importantly, WHO of those has been with WHO.

Understanding the uneasiness of Us public. And our wanders looking for 'hardware' answers.

States has always had a grip on communications.

It is the wildness of the approach what is causing most of the problems.

As is, everybody can and is in [surveillance business], causing severe damage.

Another problem is that never before that big stake of how We think an feel had been so publicly exposed. An that is OUR problem, not even relevant to the Industry, less to the States.

Reply Score: 1

dionicio Member since:
2006-07-12

States could approach and gently ask for it. The easy way, come on. They have the stamina. On asking for a pair of keys, they are also asking for a door. Problem is: A door is a door. And lots of key masters out there.

Decades after, Public acknowledged damages have proven to be orders of magnitude greater than benefits. Not accounting for those surely still under the carpet.

On the benefit of Industry itself to survive, States have to side with the Public, and forbid dangerous hardware and software on the wild. As is siding with the Public on Health Issues. Simply because Public is the ultimate reason of being of States, and Industries.

Reply Score: 1