Group: Hardware/TODO/DUPLICATE INFO/Freest
Contents
Work in progress
Looks like we need some things that are on wikipedia mediawiki [1] but not here or default in 1.12 [2] for this to look good. I'm copying a lot of syntax from this wikipedia article [3].
Specifically this syntax is not working:
Footnote / reference syntax
<ref name="coreboot-on-dbe61c-usb">http://wiki.thincan.org/DBE61#Caveats states that "USB boot is not possible without highly experimental code."</ref>
Example: [1]
Template syntax
{{yes}} {{no}} {{rh}}
Example: style="background: #90ff90; color: black; vertical-align: middle; text-align: center; " class="table-yes"|Yes
Please help
Please add to this list, and speak up if you see something that you know is non-free!
Desktops
Definition
These systems at minimum should have:
- The ability to work stand-alone - no reliance on other computers being available
- Libre boot firmware (BIOS)
- No components that can not be replaced by a person with a screwdriver that require drivers with binary blobs to function
- Usually wifi adapters and graphics adapters are the issues here - you can help with this if you are a hacker with appropriate skills...
- Not make an insane amount of noise or have a form factor that is aimed at the server market
Comparison: Basic properties
Release year | Approx System Price | Architecture | Boot firmware | Wifi chipset | Video chipset | Links | |
---|---|---|---|---|---|---|---|
BeagleBoard RevC2 | 2008 | $206.30 BeagleBoard + Power Supply + Case |
armel | u-boot | - | PowerVR(framebuffer can be used without proprietary driver,3d needs proprietary drivers) | Detailed Specifications |
ThinCan DBE61C-USB | 2005 | $395 (for a two-pack) |
i386 | coreboot "USB boot is not possible without highly experimental code." [4] |
- | todo | todo |
Comparison: Where purchasable and lowest-cost shipping option
World | BE | CN | FR | US | |
---|---|---|---|---|---|
BeagleBoard RevC2 | Yes | $22 | |||
ThinCan DBE61C-USB | Yes | $125 |
Please use ISO Country Codes.
World indicates that there is at least one reseller that is willing to ship anywhere in the world as a standard part of their business.
Misc Notes
BeagleBoard RevC2
- 3D graphics require a binary blob, but you can just not use 3D graphics.
- Boot loader is u-boot. ROM source isn't open, but ROM is really ROM, in the chip, not flashable from software. There is a loader between the ROM and u-boot called x-loader, but it is based on u-boot and is free software.
- x-loader is also called MLO when put on a sd-card : from the #beagle channel: "<khasim> MLO is x-loader, x-loader is strip down version of u-boot, used to get a minimal bootloader onto OMAP3's internal RAM, generally used with NAND and MMC booting as they are don't support executing in place"
- the tools for compiling and flashing x-loader are free software : "<Gnutoo> ok are the tools for compiling x-loader and flashing it free software? => <jpirko> Gnutoo: yes" and the source of some uttilities can be find here
- The Always Innovating Touch Book is basically a BeagleBoard in a (*really* :-) nice case.
- See IRC logs starting here for more...
- It's *really* tiny. The box is about the size of 2 packs of playing cards.
- http://kamejoko80.wikidot.com/news
- Kridner observed that the board's HDMI video port is not actually HDMI-compliant. However, he said it "works great" with low-cost HDMI-to-DVI adapters and ordinary LCD flat panel displays. "The splashscreen is 1280 x 1024, but the bottleneck is on the pixel clock, which has a 75MHz limitation. So right now we can do 720p — 1280 x 720 — at 30 frames per second," he said. [5] - This is good as HDMI is usually DRM-encumbered [6].
ThinCan DBE61C-USB
Really expensive shipping.
lshw output
Output from lshw.
BeagleBoard RevC2
TODO
ThinCan DBE61C-USB
TODO
Machines to evaluate when possible
- Lemote Fuloong Mini - not available outside of china to the general public as far as I know - might be possible to get if you are a hacker and contact them directly. Need someone who speaks a Chinese language to comment on price and availability within China (this info doesn't seem to be available in English).
- ThinCan DBE63 - should be available in Q2 or Q3 2009.
Routers
A lot of router run or are capable of running a GNU/Linux distribution,but most of them have non-free wifi drivers despite of having a free bootloader(which replace the bios)
- /brcm47xx HOWTO free your wrt54*/brcm47xx router : running a 100% free GNU/Linux distribution on your wrt54*/brcm47xx router router is possible...it just need to be polished
- routers with atheros wifi cards usually come with wifi driver named madwifi and that contain(need to verify if it's still the case) a blob named HAL. but Master mode may be possible with the ath5k driver + wireless-compat
Laptops
Lemote
The Lemote yeeloong is the first fully free laptop, including the Bootloader(that replaces the BIOS) and the operating system.There are no firmwares in the wifi card. A port of gnewsense is beeing developed for this laptop,and the laptop is used by Richard Stallman.
Characteristics
- MIPS 64 CPU@800MHz
- 512MB or 1GB of DDR2 RAM
- 1024x600 screen
- 160GB hard disk or 2GB SSD or 8GB SSD
Non-Free Components
While Lemote has made an amazing effort to make the hardware as free as they possibly could, there are still a few non-free software components (in the form of binary blobs):
- The Embedded Controller (EC) - Code belongs to Quanta, Lemote cannot release
- The PCI expansion ROM that initializes the SM712 - Code is actually designed for x86 (runs in an emulator), likely is owned by SiliconMotion
- Hard Disk firmware
Servers
- Some server can be bought with coreboot pre-installed,informations are here
Mobile Phones and PDA/Tablets
- Openmoko Freerunner is currently the most free mobile phone
- There is an effort to liberate the Palm Pre as much as possible
Openmoko
The good
- all what runs on the main CPU is free
- it uses a standard GNU/Linux distribution
- several GNU/Linux distributions avaliable such as:
- SHR
- Debian
- Openmoko
- free schematics
- debug board avaliable(JTAG+serial)
- 2 bootloaders so you can realy be free and change your bootloader without risks
The bad
- Some units are affected by a buzz(strong noise during calls),but there were buzz-fix parties,and some resellers sell fixed phones
- Glamo chip:
- NDA
- compatibility problems with some micro-sd cards
- The basses are filtred on the headphones output...because of a capacitor which value was too low(can't be fixed)
- non-free firmwares:
- GPS
- GSM
- WIFI(beware hardmac...that is to say that the wifi connection stack is in the firmware)
- Me and other people experienced gprs connection drop with SIP
- Others bugs/problems are in the bugtracker
- The openmoko company had economic problems and transferred the development of the next phones,and the task of maintaining the current software to the community
- non-free uttility needed in order to update the GSM's firmware(only needed if you want to update the gsm's firmware because of bugs such as the non recognition of some sim cards)
Palm Pre
- there is a wiki for informations on the palm pre,including how to jailbreak/root it
- the incomplete[1] sources for the palm pre are here
[1]: lacks build scripts(openembedded recipes) and directfb seems to be lacking,and directfb that is LGPL according to wikipedia: http://en.wikipedia.org/wiki/Directfb,and according to this post: http://sargund.wordpress.com/2009/06/12/5/ Directfb is used on the palm pre
Others (Anti-vendor port) phones
- see here for a list of some phones or device that can be liberated
- be carefull to the bootloader: some device boots with Haret or similar bootloader,that means that it boots from the original OS,so:
- the boot time is very long
- you still have a non-free os on the phone/device that could do nasty things
- Some phones(glofiish) that are quite similar to the openmoko have a free bootloader(=bios), but have incomplete support for the Linux kenrel
Android
Currents[3] android phone should not be used as is:
- It spy on you [1]
- The G1 and the dev phone have non-free ati 3d driver[2]
- The free version of the SDK(need to be compiled) has a non-free dependency: java-1.5(we have free java but it's 1.6)[4]
If you buy one expect to have to do some work such as:
- jailbreak/root it if it's not a dev phone
- reflash a bootloader if it's not a dev phone
If you want a real GNU/Linux distribution you should:
- create a GNU rootfs
- port the FSO stack to it: in order to have the telephony part you should write some code for suporting the specificities of your modem
- maybe others things that I could have forgotten
Else,if you want an android version you should:
- download the source and follow the howto [6]
- do some work to remove the non-free 3d driver
- compile a free version of android
Note that with that version you won't be able to have a free SDK without non-free dependencies
NOTES on openmoko and android:
- The openmoko phone is capable of running a free version of android(without google stuff,see [3]). There are several ways of having a fully free android for the freerunner:
- Compiling the image yourself
- using user-generated rootfs [5]
- Using a kooolu[8] image but removing the non-free software: In order to do that you must replace the userdata.img that is a tar archive(userdata.img: POSIX tar archive (GNU)) with an empty tar arvhive.
TODO:
- look if there is 2d acceleration for kdrive/xorg
- try to build the SDK with GCJ/GNU classpath or fix the bug that require the non-free java
References
[1] http://www.linuxtogo.org/android-on-g1
[2] http://lwn.net/Articles/313116/ inside http://lwn.net/Articles/311715
[3] as explained here there are several modalities for a vendor to put android on a phone
[4] "JDK 5.0, update 12 or higher. Java 6 is not supported, because of incompatibilities with @Override." in http://source.android.com/download
[5] http://moko.serdar-dere.net/
[6] http://source.android.com/download
[7] IRC logs:in #freerunner-android in freenode
Jul 05 16:15:04 <Gnutoo> so basically your images(so not koolu's ones that have skype) are 100% free
Jul 05 16:16:41 <serdar> but not working well
Nokia tablets
The Documentation on what is not free can be find here
Walkmans/Music players
Rockbox players
Archos's players
While Archos's players runs GNU/Linux there are several problems with them,depending on the model
Pma430
Pma430 is a very old player which runs a 2.4.19-rmk7 linux kenrel that has proprietary drivers such as:
- framebuffer(a free replacement exist for uclinux)
- DSP(maybe free replacement extst)
The userland has also a lot of proprietary things such as:
- a proprietary version of qtopia
- the media players are proprietary(a port of mplayer exists)
In addition it ran only signed images(but code could run on the unit) until someone released a software for getting rid of this artificial limitation(patching the bootloader) TODO:
- port the free drivers to the 2.6 kernel
- port free replacements of the proprietary drivers to the 2.6 kernel
- make a free rootfs
- contact Benoit Papegay for having the sources of his work:
From: Benoit Papegay <benoit.papegay 'AT' free.fr> Reply-to: openPMA developer mailing list <openpma-dev 'AT' openpma.org> To: openpma-dev 'AT' openpma.org Subject: [openPMA-dev] dm270 Date: Tue, 10 Feb 2009 22:15:49 +0100 (CET) I've find a way of using the dm270 processor without stopping the omap. I've written a small module, a firmware and a loadder. the main problem is that it is totally incompatible with archos' modules. It could be used to init the lcd, the videnc and the video mode, but I found it is still too slow. So I've try to use dspgw to access video memory. In order to use a recent version of dspgw, i'd like to port the pma to a 2.6 kernel, so i wonder if someone ever try to compile and boot it. I'm actually cleaning my code and writing some explanations on how to use it. I'll make it public soon. -- Benoit Papegay _______________________________________________ openPMA-dev mailing list openPMA-dev@openpma.org http://www.openpma.org/mailman/listinfo/openpma-dev
NOTES:
even with a fully free rootfs the device would have some problems because of the DSP:
- The device is slow when playing audio because you have to feed the DSP(that does audio) very frequently
- The DSP part is not free,and is buggy,for instance you often have to reboot the whole player when it refuses to play a new song,often occurs when going backward in the playlist
x04/x05
Theses models have also the bootloader signature problem,and are not fully liberated.
Basically someone can run code on the unit[1] and even have run qtopia version running[2] but you can't run your own rootfs or make changes to the filesystem.
But even worse...some people managed to remove the bootloader's limitations[3],but they don't want to release what they did
[1] http://code.google.com/p/arcwelder/
[2] http://forum.archosfans.com/viewtopic.php?t=11144&start=447 ,I didn't check if there are the sources
[3] http://forum.archosfans.com/viewtopic.php?f=34&t=17200&st=0&sk=t&sd=a&sid=47c8cee105cd9646d923c3349a0cab32
TODO:
- get rid of the bootloader's limitation,you should have knowledge of arm assembly,know well security,and know how to write exploits
- create a free rootfs
Components
The components are part of a computer,such as the graphic card and can be used to choose laptop and embedded computers ,or to make or choose Desktop computer
Graphic cards
- Free Graphic cards drivers must be checked in order to see if there are some sort of microcode loaded.
Intel Cards
Most of intel card come with a free software driver but some cards like the GMA 500 are instead a Powervr which lacks free software driver for something else than framebuffer.
Note that the Poulsbo chipset incorporate a Powervr
Ati Cards
The status of the most common Ati chipset support in the free software driver can be find here
The correspondence between the chips and the cards models are here
Nvidia Cards
The support for Nvidia cards in the free software driver(nouveau) is very experimental,status can be find here,there is also a Status Matrix
Note that the nv driver while beeing under a free software license, is ofuscated.
Wifi cards
- ath5k
- ath9k
- rtl8187
- rt2500
Mainboards
Mainboards for x86 system
Usually Mainboards comes with a bios already present,but that's not always the case:
- some alix boards but not all of them comes with a free software replacement for the BIOS named tinybios
- some system can be bought with coreboot preinstalled(where?)
Otherwise the only solution is to install coreboot if the mainboard is suported or port it if the chip are suported but not the mainboard. This is a complicated procedure which include the removal and replacement of the bios chip(the Eprom memory chip) while the computer is running. Here is the list of Supported Motherboards
Other Hardware
Hobbyist hardware
- BUGlabs's bug: 100% free software, apart from the possible firmwares, schematics are avaliable
- Arduino
- Pinguino,the blog of the project is here